基础知识
正则表达式是提供了一种在文本中进行搜索和替换的强大的方式的模式。
模式与修饰符
- 模式
- 字面量:
/abc/ - 构造函数:
new RegExp('abc')
- 字面量:
- 修饰符(前三种常用)
i:忽略大小写g:全局匹配,不添加则只匹配第一个m:多行匹配s: dotAll 模式,允许.匹配任何字符(包括换行符\n)u:unicode 模式,启用 Unicode 匹配y:粘连模式,全局匹配,但是从上一次匹配的结束位置开始
JS中使用RegExp对象的方法
search:返回第一个匹配的位置 str.search(reg)match:返回所有匹配的字符串 str.match(reg)replace:替换匹配的字符串 str.replace(reg, newStr)split:分割字符串 str.split(reg)test:检测字符串是否匹配 reg.test(str)
进阶之路
字符类
\d匹配数字\D匹配非数字\w匹配字母、数字、下划线\W匹配非字母、数字、下划线\s匹配空白字符\S匹配非空白字符.匹配除换行符之外的任何字符
Unicode 字符类
\p{...}匹配符合 Unicode 属性的字符