文档章节

正则学习

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+'">';
    });

© 著作权归作者所有

共有 人打赏支持
上一篇: 兼容性问题
下一篇: OTS--bug库
litCabbage
粉丝 0
博文 61
码字总数 20135
作品 0
私信 提问
优化算法——截断梯度法(TG)

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

google19890102
2015/08/28
0
0
正则&highlight高亮实现(干货)

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

牧云云
2017/01/12
0
0
java语言中的----正则表达式

day14 java语言中的----正则表达式 一、概述: 正则表达式在Java语言中也算是一个比较重要的模块,前面我们学习了一些关于正则表达式的基础,在登录注册功能中使用比较广泛,所以说在这儿我就...

孤独一夜
2017/10/08
0
0
知道这20个正则表达式,能让你少写1,000行代码

首页 程序员 知道这20个正则表达式,能让你少写1,000行代码 知道这20个正则表达式,能让你少写1,000行代码 易大师 2016-10-23 113次浏览 0条评论 1 打赏作者 1 0 正则表达式,一个十分古老而...

小田天
2016/12/11
48
0
正则表达式

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

方花
2017/11/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

漏洞防御与修复工作

漏洞管理工作是企业安全建设必不可少的一环,在风险管理工作中,漏洞管理能够防患于未然,企业对漏洞管理有着广泛的基础建设和实践经验。但随着攻防技术的发展,传统漏洞管理的安全技术和管理...

linuxprobe16
今天
1
0
MicroPython技术及应用前景

1 Micropython技术是什么? MicroPython极精简高效的实现了Python3语言。它包含Python标准库的一小部分,能在单片机和受限环境中运行。 1.1 MicroPython发展 由剑桥大学的理论物理学家乔治....

bodasisiter
今天
4
0
跟我学Spring Cloud(Finchley版)-13-通用方式使用Hystrix

本节详细讲解使用Hystrix的通用方式。 简介 Hystrix是由Netflix开源的一个延迟和容错库,用于隔离访问远程系统、服务或者第三方库,防止级联失败,从而提升系统的可用性与容错性。Hystrix主要...

周立_ITMuch
今天
2
0
🛠️Hanjst/汉吉斯特更新加JavaScript运行时优化等

这是 Hanjst/汉吉斯特 发布以来的首个主要升级更新版本。这次的主要升级更新的内容包括移除HTML Comments注释行, 优化在 Hanjst include模板文件时的JavaScript运行时环境。 Hanjst 在设计和...

wadelau
今天
3
0
OSChina 周六乱弹 —— 舔狗是没有好下场的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @我没有抓狂 :#今天听什么# #今天听这个# 分享 Nirvana 的歌曲《Smells Like Teen Spi...》 《Smells Like Teen Spi...》- Nirvana 手机党少...

小小编辑
今天
616
14

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部