正则表达式是被用来匹配字符串中的字符组合模式。在javascript中,正则表达式也是对象,这种模式可以被用于RegExt 的 exec 和test 方法以及 String 的match、replace、search 和splic方法。

正则表达式

1.特殊符号

! $ ^ * + = | . ? \ / ( ) [ ] { }
"." 表示任意字符

2.特殊字符

o t n v f r xnn  uxxxx cX    

字符类

代码/语法 说明
\w 匹配任何ASCII单字符[a-zA-Z0-9_]
\W 匹配任何ASCII单字符之外的字符
\s 匹配任何Unicode空白字符
\S 匹配任何Unicode空白字符之外的字符
\d 匹配任何数字[0-9]
\D 匹配任何数字之外的字符
[……] 匹配方括号中的所有字符
[^……] 匹配非方括号中的所有字符

重复类

代码/语法 说明
{n} 匹配前一项n次
{n,} 匹配前一项至少n次,至多不限
{n,m} 匹配前一项至少n次,至多m次
{?} 匹配前一项0次或者1次
{+} 匹配前一项至少1次
{*} 匹配前一项0次或者多次

选择符

| 分隔可以用来选择文字

定位符

^ 匹配字符串的开头
$ 匹配字符串的结尾
\b 匹配一个单词的边界
\B 匹配一个非单词的边界

分组

(……) 将几个项目组合成一个单元
(?……) 与(……) ,只是不记忆与该组合匹配的内容

标志

i 匹配时不区分大小写
g 匹配时执行全局匹配
m 匹配时执行多行匹配

区间

\u4e00-\u9fa5 汉字区间
\x00-xff   单字节区间