转义字符
\d 包含所有数字[0-9]
\D 除所有数字外[^0-9]
\w 包含所有字符(大小写英文字母、下划线、数字) [a-zA-Z_0-9]
\W 除所有字符(大小写英文字母、下划线、数字)外 [^a-zA-Z_0-9]
\s 空白区域如回车、换行、分页等 [\f\n\r]
\S 非空白区域如回车、换行、分页等 [^\f\n\r]
元字符
. 除了\n之外的任意一个字符
\ 转义字符
| 或者
() 分组
\n 匹配换行符
\b 匹配边界 字符串的开头和结尾 空格的两边都是边界 => 不占用字符串位数
^ 限定开始位置 => 本身不占位置
$ 限定结束位置 => 本身不占位置
[a-z] 任意字母 []中的表示任意一个都可以
[^a-z] 非字母 []中^代表除了
[abc] abc三个字母中的任何一个 [^abc]除了这三个字母中的任何一个字
模式修正符
小写i:不区分大小写
小写m:匹配首内容或尾内容时采用多行识别匹配
小写s:将转义回车取消视为单行匹配
小写x:忽略正则中的空白
大写A:强制从头开始匹配
大写D:强制$匹配尾部无任何内容
大写U:禁止贪婪匹配,只跟踪到最近的一个匹配符并结束,常用在采集程序
小写u:匹配中文
方法
reg=/ /g
reg.test(str) 用来验证字符串是否符合正则 符合返回true 否则返回false
reg.exec() 用来捕获符合规则的字符串
str.replace(reg,str) 替换