分类 技术心得 下的文章

用vs code实现正则表达式批量替换内容

我现在还不会正则表达式,所以根据搜索到的文章,看到别人的用法,然后依样画葫芦式地运用下。

替换前的内容:

static/cui.css
static/style.css
static/less.css

需要在static目录后面再加一个css目录

打开vs code,然后Ctrl+F,把搜索功能调出来,点击下查找框左边向下展开的箭头,把替换框也展现出来。

在查找框输入:static/(.*).css
在替换框输入:static/css/$1.css

点击查找框后面的第三个按钮,如下图,表示启用正则表达式匹配,你会看到文档中被成功匹配的内容被标色了,然后再点击批量替换就OK了。
5.png

从上面的代码可以看出,(.)表示了斜杠和标点之间所有的内容,$1代表了上面(.)匹配出的值。

现在有一个新需求,就是把一篇文章里的A标签全部删掉,但是要保留A标签里的关键词。整理下文章里所有A标签的案例,如下:

<a href="http://www.xxoo.com">关键词一</a>
<a href="http://www.xxoo.com" title="xxoo">关键词二</a>
<a href="http://www.xxoo.com" target="_blank">关键词三</a>

在查找框输入:<a href="(.*)>(.*)</a>
在替换框输入:$2

批量替换即可。从上面按钮可以看到,查找用了2个(.*)分别匹配2个值,然后替换时,$2表示保留第二个值。

破解开源CMS软件AKCMS的思路

很多免费开源CMS软件都会在自己的作品中加上自己的版权信息,比如ecms,dedecms,ecshop,discuz,会在你的网站中某个地方插入powered by xxoo这种字眼。AKCMS是怎么插入的呢?有2个地方:

1,他会在你每个网页底部强行插入powered by akcms的字体和链接,网友都看得到的。这种可以用<span style="display:none;">[powered]</span>方法,在网页上隐藏显示,但翻看HTML代码还是能看到版权信息。

2,他会在每个页面插入代码,网页上看不到什么效果,只有翻看HTML代码能看到:

阅读剩余部分

M3U8视频在PC端和手机端播放代码

最近在调研YY直播WAP页面视频直播的地址,发现居然是M3U8格式的。在网络上找了很久的播放器代码,最终找到一个兼容PC电脑、苹果手机和安卓手机的播放器代码。

<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>M3U8移动端+PC端播放</title>
  <link href="image/video.css" rel="stylesheet">
  <script src="image/video.js"></script>
  <script src="image/videojs-live.js"></script>
</head>
<body>
  <video id="my_video_1" class="video-js vjs-default-skin" controls preload="auto" autoplay="autoplay" width="1000" height="500"
  data-setup='{}'>
    <source src="http://175.20.85.23:447/83428215_83428215_50020_0_0_50020.m3u8" type="application/x-mpegURL">
  </video>
</body>
</html>

完整文件下载:m3u8.zip

火车头:让内容页里相同结构的数据分条入库

有些内容页采集出来的数据是多条的,这种最具代表性的就是json格式的数据,比如:

{ "name": "中国", "province": [{ "name": "黑龙江", "cities": { "city": ["哈尔滨", "大庆"] } }, { "name": "广东", "cities": { "city": ["广州", "深圳", "珠海"] } }, { "name": "台湾", "cities": { "city": ["台北", "高雄"] } }, { "name": "新疆", "cities": { "city": ["乌鲁木齐"] } }]` }

采集这种数据下来要分条入库,在火车头软件里设置有核心三点:

阅读剩余部分

jQuery实现右侧指定区块固定漂浮效果

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>测试</title>
<script type="text/javascript" src="http://www.cqxinhao.com/image/jquery-1.4a2.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(e) {            
        t = $('.piaofu').offset().top;
        mh = $('.left').height();
        fh = $('.piaofu').height();
        $(window).scroll(function(e){
            s = $(document).scrollTop();    
            if(s > t - 10){
                $('.piaofu').css('position','fixed');
                if(s + fh > mh){
                    $('.piaofu').css('top',mh-s-fh+'px');    
                }                
            }else{
                $('.piaofu').css('position','');
            }
        })
    });
</script>
<style type="text/css">
    *{ padding:0px; margin:0px;}
    .box{ width:1000px; background:#ccc; margin:0 auto; overflow:hidden;}
    .left{ width:770px;height:2000px; background:#000;float:left;}
    .right{ width:220px; background:#FC6; float:right;}
    .sub01{ width:220px; height:100px; background:#0CC; margin-bottom:10px;}
    .piaofu{ width:220px; height:300px; background:#F66; font:normal 13px/30px \5FAE\8F6F\96C5\9ED1; text-align:center; top:10px;}
</style>
</head>
<body>
<div class="box">
    <div class="left"></div>
    <div class="right">
        <div class="sub01"></div>
        <div class="sub01"></div>
        <div class="sub01"></div>
        <div class="piaofu">我要固定漂浮</div>        
    </div>
</div>
</body>
</html>