JavaScript中的正则表达式

创建方式

var reg=/\s/
var reg=new RegExp('\\s')//需要转义

匹配原理

所有字母和数字按照字面含义进行匹配

特殊符号需要加反斜线(\)作为前缀进行转义

匹配字符

[...]  匹配括号中的任意字符

[^...]    ^作为左方括号内的第一个字符时,例如:[^abc]表示取a,b,c之外的所有字符

\w   等价于[a-zA-Z0-9]   \W等价于[^a-zA-Z0-9]

\s    任何Unicode空白符  \S取非空白符

\d   任何ASCII数字,等价于[0-9]  \D 取0-9之外的字符

[\b]  退格直接量

多次匹配

{n,m}   匹配前一项的出现次数,大于等于n,小于等于m

{n}  匹配n次

{n,}  匹配至少n次

?    等价于{0,1}

+     等价于{1,}

*           等价于{0,}

指定匹配位置

^   匹配字符串的开始

$  匹配字符串的结束

\s 匹配单词边界,\S相反,例如:

(?=p) 零宽正向先行断言,要求接下来的字符都与p匹配(?!p)相反

修饰符

位于末尾/之外

i   模式匹配不区分大小写

g  全局匹配

m 多行模式匹配,例:

选择,分租,引用

|            选择修饰符,按表达式从左至右匹配,左边匹配到,右边不匹配

(...)        组合,将几项组合为1单元,可通过\n来引用,(?...)只组合,不参加引用,可参考下图返回结果

 \n          用来引用之前的(...)匹配项

 

posted @ 2018-07-25 10:38  CodingSherlock  阅读(191)  评论(0编辑  收藏  举报