语法
注意:字符转义规则
var re = new RegExp("\\w+");
var re = /\w+/;
修饰符
- i :执行对大小写不敏感的匹配
- g :执行全局匹配
- m :执行多行匹配
方括号
用于查找某个范围内的字符
- [ abc ] :查找方括号之间的任何字符
- [ ^abc ] :查找任何不在方括号之间的字符
- [ 0-9 ] :查找任何从 0 到 9 的数字
- [ a - z ] :查找任何从小写 a 到 小写 z 的字符
- [ A - Z ] :查找任何从大写 A 到 Z 的字符
- [ A - z ] :查找任何从大写 A 到 小写 z 的字符
- ( a | b ):查找任何指定的选项
元字符
元字符 | 描述 |
---|---|
. | 查找单个字符,除了换行和行结束符 |
\w | 查找数字、字母及下划线 |
\W | 查找非单词字符 |
\d | 查找数字 |
\D | 查找非数字字符 |
\s | 查找空白字符 |
\S | 查找非空白字符 |
\b | 匹配单词边界 |
\B | 匹配非单词边界 |
\0 | 查找NULL字符 |
\n | 查找换行符 |
\f | 查找换页符 |
\r | 查找回车符 |
\t | 查找制表符 |
\v | 查找垂直制表符 |
\xxx | 查找以八进制数 xxx 规定的字符 |
\xdd | 查找以十六进制数 dd 规定的字符 |
\uxxxx | 查找以十六进制数 xxxx 规定的 Unicode 字符 |
量词
- n+ :匹配任何包含至少一个 n 的字符串
- n* :匹配任何包含零个或多个 n 的字符串
- n? :匹配任何包含零个或一个 n 的字符串
- n{x} :匹配包含 x 个 n 的序列的字符串
- n{x,y} :x 和 y 为正整数,前面的模式 n 连续出现至少 x 次,至多 y 次时匹配
- n$ :匹配任何结尾为 n 的字符串
- ^n :匹配任何开头为 n 的字符串
- ?=n :匹配任何其后紧接指定字符串 n 的字符串
- ?!n :匹配任何其后没有紧接指定字符串 n 的字符串
方法
- exec() 检索字符串中指定的值,返回找到的值,并确定其位置
- test()检索字符串中指定的值,返回 true 或 false
- toString()返回正则表达式的字符串
属性
- constructor :返回一个创建 RegExp 对象的原型函数
- global :判断是否设置了 “ g ” 修饰符
- ignoreCase :判断是否设置了 “ i ” 修饰符
- lastIndex :用于规定下次匹配的起始位置
- multiline :判断是否设置了 “ m ” 修饰符
- source :返回正则表达式的匹配模式
支持正则表达式的字符串方法
- search :检索与正则表达式相匹配的值
- match :找到一个或多个正则表达式的匹配
- replace :替换与正则表达式匹配的子串
- split :把字符串分割为字符串数组