元字符
- \w 匹配字母、数字、下划线,等价于'[A-Za-z0-9_]'部分操作系统可以匹配汉字
- \d 匹配数字,等价于'[0-9]'
- . 匹配除换行符(\n,\r)之外的任何单个字符,要匹配包括'\n'在内的任何字符,使用像"(.|\n)"
- \s 匹配任何空白字符,包含空格、制表符、换页符等,等价于[\f\n\r\t\v]
- \b 匹配单词的开始或结束
- ^ 匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配'\n'或'\r'之后的位置
- 也匹配 '\n' 或 '\r' 之前的位置。
- 匹配前面的子表达式零次或一次多次,等价于{0,}
- 匹配前面的子表达式一次或多次,等价于{1,}
- ? 匹配前面的子表达式零次或一次,等价于{0,1}
- {n} n是一个非负整数,匹配确定的n次
- [^] 在方括号中使用^表示“非”,“排除”
- ?当该字符紧跟在任何一个其他限制符(*,+,?,{n},{n,},{n,m})后面时,匹配模式是非贪婪的
- (pattern) 匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到
- (?:pattern) 匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。
- (?=pattern) 正向肯定预查(look ahead positive assert),在任何匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。
- (?!pattern) 正向否定预查(negative assert),在任何不匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。
- (?<=pattern) 反向(look behind)肯定预查,与正向肯定预查类似,只是方向相反。
- (?<!pattern) 反向否定预查,与正向否定预查类似,只是方向相反。
RegExp实例方法
-
exec() 该方法专门为捕获组设计。接受一个参数,即要应用模式的字符串,返回包含第一个匹配项信息的数组;在没有匹配项的情况下返回null。返回的数组虽然是Array实例,但是包含两个额外的属性:index和input.index 表示匹配 项在字符串中的位置,而 input 表示应用正则表达式的字符串。在数组中,第一项是与整个模式匹配 的字符串,其他项是与模式中的捕获组匹配的字符串(如果模式中没有捕获组,则该数组只包含一项)。
image.png
-
test()方法,接受一个字符串参数吗。在模式与该参数匹配的情况下返回true;否则,返回false
image.png -
toLocaleString()和toString() 返回正则表达式的字面量,与创建正则表达式的方法无关
image.png
RegExp构造函数属性
image.png image.pngimage.png
网友评论