文档章节

正则学习

litCabbage
 litCabbage
发布于 2017/05/04 14:30
字数 473
阅读 4
收藏 0

一 前言

  1. 正则是一种特殊的字符串模式,用于匹配一组字符串。
  2. 常用工具

二 正则实际应用

  1. 截取后台json字符串,例如获取北京西城区,代码如下,
    var obj = {
      "id": "402881882ba8753a012ba8bff6f6001e",
      "name": "西城区",
      "displayName": "北京西城区",
      "path": "402881882ba8753a012ba8bf474d001c,402881882ba8753a012ba8bff6f6001e",
      "grade": 1,
      "orderList": 0,
      "areaCode": null
    };
    function execData (obj) {
      obj = typeof obj =="object" ? JSON.stringify(obj) : obj;
      var str, cityStr;
      // 将后台数据转换成JSON字符串
      // 把所有的引号都变成单引号,但是会出现有\的情况,将\全局替换
      str = obj.replace(/\"/ig,"'").replace(/\\/g, "");
      // 获得正则匹配后的数据
      cityStr = str.replace(/.*displayName\'\:\'([\u4E00-\u9FA5]+).*'\,.*/, "$1");
      return cityStr;
    }
    console.log(execData(obj));

2.工作中遇到需要知道编辑器上传了多少个音视频附件的问题(百度编辑器)

    var str = '<p style="line-height: 16px;"><img style="vertical-align: middle; margin-right: 2px;" src="http://172.16.6.130:8080/oxer/resources/ots/resources/newAssets/fileupeditor/dialogs/attachment/fileTypeImages/icon_mp3.gif"/><a style="font-size:12px; color:#0066cc;" href="/oxer/datafiles/ots/@tenant/file/2017/0724/1500880448088053653.mp3" title="1.mp3">1.mp3</a></p><a style="font-size:12px; color:#0066cc;" href="/oxer/datafiles/ots/@tenant/file/2017/0724/1500880448088053653.rar" title="1.rar">1.mp3</a><p style="line-height: 16px;"><img style="vertical-align: middle; margin-right: 2px;" src="http://172.16.6.130:8080/oxer/resources/ots/resources/newAssets/fileupeditor/dialogs/attachment/fileTypeImages/icon_rar.gif"/><a style="font-size:12px; color:#0066cc;" href="/oxer/datafiles/ots/@tenant/file/2017/0724/1500880461783006922.zip" title="audiojs-master.zip">audiojs-master.zip</a></p><p><br/></p>';
    // 拿到的是href="/oxer/datafiles/ots/@tenant/file/2017/0724/1500880448088053653.mP3"
    var patt1 = new RegExp(/(href\=".+?")/, "ig");
    // 拿到的是/oxer/datafiles/ots/@tenant/file/2017/0724/1500880448088053653.mP3,正好是我所需的播放地址
    var patt2 = new RegExp(/href\="(.+?)"/, "ig");
    var aa = str.match(patt1);
    for (var i = 0, len = aa.length; i < len; i++) {
      console.log(aa[i]);
    }

3.匹配emoj

var str = "*#emo_01#*啥的公司地方官史蒂夫*#emo_02#*撒阿道夫";
    str = str.replace(/\*#(.*?)#\*/g, function () {
      var _arg1 =arguments[1];
      return '<img src="./images/ios/'+_arg1+'">';
    });

© 著作权归作者所有

共有 人打赏支持
litCabbage
粉丝 0
博文 54
码字总数 18378
作品 0
优化算法——截断梯度法(TG)

一、L1正则的表达形式 在机器学习中,几乎无人不知无人不晓L1正则与L2正则,L1正则与L2正则都有参数控制的作用,对模型起到约束的作用,防止过拟合。但是L1正则与L2正则也有区别,L1正则更容...

google19890102
2015/08/28
0
0
精华 | 深度学习中的【五大正则化技术】与【七大优化策略】

微信公众号 关键字全网搜索最新排名 【机器学习算法】:排名第一 【机器学习】:排名第一 【Python】:排名第三 【算法】:排名第四 源 | 数盟 深度学习中,卷积神经网络和循环神经网络等深度...

mbx8x9u
2017/12/28
0
0
谷歌提出新型正则化方法,让深度神经网络克服大数据中的噪声

  有老师指导就能更好地学习吗?对于深度神经网络是否也是如此?近日,谷歌和斯坦福大学的研究者的一篇论文提出了一种用MentorNet监督StudentNet进行训练的新技术。这项研究的第一作者是谷...

大数据头条
2017/12/18
0
0
正则&highlight高亮实现(干货)

写完正则表达式以后在浏览器上检测实在是不方便,于是就写了一个JS正则小工具,大大地提高了学习效率。学习之余用正则实现了一个highlight高亮demo,欢迎交流。 什么是正则表达式? 简单的说:...

牧云云
2017/01/12
0
0
正则表达式

正则表达式 一、 什么是正则表达式 /^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$/ 这就是正则表达式? 看不懂 二、 和正则表达式相似的事物 乱/看不懂/神秘 女人的心 道士的符 医生的处方 正则表...

方花
2017/11/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

[Python进阶] Python命令行参数

Python 获得命令行参数的方法 需要模块:sys 参数个数:len(sys.argv) 脚本名: sys.argv[0] 参数1: sys.argv[1] 参数2: sys.argv[2] 解析命令行参数 Python提供了一个getopt模块,可用于解...

Eappo_Geng
25分钟前
1
0
add docker api url to jenkins

add docker api url to jenkins add jenkins to dockergroup gpasswd -a $USER docker gpasswd -a jenkins docker DOCKER_OPTS="-H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock" in ......

kewei_zhang
29分钟前
1
0
Scala入门篇

1、定义变量 var 可变 val 不可变,相当于Java中的final Unit相当于Java中的void,以()表示 scala> val a = println("ddd") ddd a: Unit = () 2,声明数组 scala> val arr = Array(1,2,3,4,5) ......

算法之名
29分钟前
7
0
利用redis统计分布式集群中接口缓存命中情况

接口使用了缓存,想看看缓存命中率,到底提升了多少了?固想到做个统计方法,单机情况下使用 AtomicImteger,考虑到分布式集群中多台服务器调用,所以考虑使用redis进行统计 原来的想法很简单用分布...

计算机的小二青年
30分钟前
2
0
前端加密JS库--CryptoJS 使用指南

有时候项目涉及到的敏感数据比较多,为了信息安全,我们常常需要对一些数据进行接口加密处理,如编码、将明文转化为暗文、加密比对、AES + BASE64 算法加密等。 Base64 编码 为什么要编...

舒龙虎
32分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部