js正则表达式总结

  介绍

这篇文章主要介绍”js正则表达式总结”,在日常操作中,相信很多人在js正则表达式总结问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答“js正则表达式总结”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

var  reCat =, new 正则表达式(“cat",,“gi");,//RegExp构造函数可以带一个或两个参数,第一个参数描述需要进行匹配的模式字符串,第二个参数指定了额外的处理命令,   var  reCat =,/猫/gi;,//使用Perl风格的语法,   ,   ,我:执行对大小写不敏感的匹配,   ,g:执行全局匹配(查找所有匹配而非在找到第一个匹配后停止),   ,m:执行多行匹配

<强>元字符,

元字符是表达式语法的一部分,在正则表达式中用到的所有元字符有:{((\ ^ |美元))}?* +安康;
如匹配一个问号:var reQMark=/\ ?/;或var reQMark=new RegExp (“\ \ ?“);//注意这里是两个反斜杠,双重转义,,

\ xxx 查找以八进制数,xxx 规定的字符,如:142/\/为字符b    \ xdd 查找以十六进制数,dd 规定的字符,如:\ x62/为字符b    \ uxxxx 查找以十六进制数,xxxx 规定的,Unicode 字符,如:\ u0062/为字符b    \ r 查找回车符,   \ n 查找换行符,   \ f 查找换页符,   \ t 查找制表符,   \ v 查找垂直制表符,   \ a 查找警告字符,   \ e 查找转义字符,   \ cX 查找与X相对应的控制字符,   \ 0,查找,NULL 字符,   ,   只查找单个字符,除了换行和行结束符,等同于[r ^ \ n \],   \ w 查找单词字符,等同于[a-zA-Z_0-9],   \ W 查找非单词字符,等同于[^ a-zA-Z_0-9),   \ d 查找数字,等同于[0 - 9],   \ D 查找非数字字符,等同于[^ 0 - 9],   \ s 查找空白字符,等同于[,\ t f \ r \ n \ x0B \], \ x0B为垂直选项卡和\ t一样,   \ S 查找非空白字符,等同于[^,\ t f \ r \ n \ x0B \]

<强>方括号,

(abc),查找方括号之间的任何字符,   (^ abc),查找任何不在方括号之间的字符,   [0 - 9],查找任何从,0,至,9,的数字,   [a - z],查找任何从小写,a 到小写,z 的字符,   [a - z],查找任何从大写,A 到大写,Z 的字符,   [a - z],查找任何从大写,A 到小写,z 的字符,   (adgk),查找给定集合内的任何字符,   [^ adgk],查找给定集合外的任何字符

<强>量词,
?匹配任何包含零个或一个的字符串,如:英航吗? d匹配bd, bad 
+匹配任何包含至少一个的字符串,如:ba + d匹配不好,baad 
*匹配任何包含零个或多个的字符串,如:英航* d匹配bd,坏,baad 
{n}匹配包含恰好出现n次的序列的字符串,如:英航{1}d匹配bad 
{n, m}匹配包含至少n次但不超过m次的序列的字符串,如:英航{0,1}d匹配bd, bad 
{n}匹配包含至少出现n次的序列的字符串,如:英航{0}匹配bd,坏,baad, baaad ,,
<强>贪婪量词:先看整个的字符串是否匹配,如果发现没有匹配,去年该字符串中的最后一个字符并再次尝试,如:?,+,*,{n}, {n, m}, {n},默认就为贪婪量词,
惰性量词:先看字符串中的第一个字母是否匹配,如果单独这一个字符还不够,就读入下一个字符、组成两个字符的字符串,与贪婪量词的工作方式恰好相反,如:+ ? ? ?,?,{n} ?m}, {n, ?,{n} ?,
支配量词:只尝试匹配整个字符串,如果整个字符串不能产生匹配,不做进一步尝试,如:?+、+ +、* +,{n} + {n, m} + {n} +,,

var  sToMatch =,“abbbaabbbaaabbb1234",,   var  re1 =,/. * bbb/g,,//匹配结果为“abbbaabbbaaabbb",   var  re2 =,/. * ? bbb/g,,//只有惰性量词才能匹配成功,匹配结果为“abbb"“aabbb",“aaabbb",   var  re3 =,/. * + bbb/g,,//匹配不了,直接报错

<强>复杂模式之分组:强通过一系列括号包围一系列字符,字符类以及量词来使用的,
/(狗){2}/,匹配“dogdog",
/((bd)广告?)*,匹配空,“ba",“da",“糟糕的;,“dad",
/(妈妈(爸爸)?),匹配“mom",“妈妈和dad",
/^ \ s * (. * ?) \ s + $/,匹配首尾的空白字符,也可以用/^ \ s + | \ s + $/g 
<强>复杂模式之反向引用:强也叫捕获性分组,按照从左到右遇到的左括号字符的顺序进行创建和编号的,例如表达式(? (B ? (C ?)))将产生编号从1 - 3的三个反向引用:(? (B ? (C ?)))、(B ? (C ?)), (C),

js正则表达式总结