正则表达式-梳理

先贴上两个地址,正则表达式的生成工具,第三个是正则表达式的生成图文解析,并测试正确与否

1,http://www.bejson.com/othertools/regex_create/

2,http://tool.oschina.net/regex/#

3,https://regexper.com/#.

 

手机号:

var pattern = /^0?(13|14|15|18)[0-9]{9}$/;
var str = "13913954321";
console.log(pattern.test(str));
邮箱:var pattern = /w[-w.+]*@([A-Za-z0-9][-A-Za-z0-9]+.)+[A-Za-z]{2,14}/;
qq: var pattern = /[1-9]([0-9]{5,11})/;
网址:var pattern = /^((https|http|ftp|rtsp|mms)?://)[^s]+/;
身份证号: var pattern = /\d{17}[\d|x]|\d{15}/;
日期格式:var pattern = /\d{4}(-|/|.)\d{1,2}\d{1,2}/;
中文数字或字母: var pattern = /[A-Za-z0-9_-\u4e00-\u9fa5]+/;


一,构造函数

var reg = new RegExp('\\bis\\b');

 

二,字符类,用[]构建简单的类

'a1b3c4d7'.replace([\[abc]\g], 'P');

输出:'P1P3P4d7'

 

字符类取反

'a1b3c4d7'.replace([\[^abc]\g], 'P');

输出:'aPbPcPPP'

 

三,范围类【a-z】

四,预定义类

五.边界

eg:单词边界

'this is a boy'.replace(\bis\is, Q)

输出: ‘this Q boy’

 

 六,量词

 

 

 

七,贪婪模式

八,分组

(boy){3}=> boy boy boy

boy{3} => boyyy

 

eg:用分组概念将2015-12-23转成 12/23/2015

‘2015-12-23’.replace(/(\d{4})-(\d{2})-(\d{2})/g, '$2$3$1')

输出:12-23-2015

九,前瞻

eg:单词字符后面是数据,只替换了前面字母

正向前瞻

 

 负向前瞻

 

 

 

十,exce,match,splice用法 function

 

posted @ 2019-07-01 11:50  若白衣卿相  阅读(151)  评论(0编辑  收藏  举报