掘友等级
获得徽章 0
JavaScript 正则表达式小知识
(?=p), 其中 p 是一个子模式,即 p 前面的位置,或者说,该位置后面的的字符要匹配 p。
多选分支可以支持多个子模式任选其一。具体形式如下:
p1|p2|p3, 其中p1、p2、p3是子模式,表示其中任何之一。
例如要匹配字符串"good"和"nice",可以使用 /good|nice/
分支结构是惰性的,即当前面的匹配上了,后面的就不再尝试匹配了。
正则表达式/\d{2,5}/,表示数字连续出现2到5次,会匹配2-5位连续数字。但它是贪婪的,会尽可能多的匹配。
例如当用这个正则匹配字符串”123 1234 12345 123456“,匹配结果为["123", "1234", "12345", "123456"]
### JavaScript 正则表达式
纵向模糊指的是,一个正则匹配的字符串,具体到某一个字符时,它可以不是某个确定的字符,可以有多种可能。其实现的方式是使用字符组。
例如 [abc],表示该字符可以是a、b、c中的任何一个。
/a[123]b/可以匹配如下三种字符串:"a1b"、"a2b"、"a3b"。
### JavaScript 正则表达式
横向模糊指的是,一个正则可匹配的字符串的长度是不固定的,可以是多种情况。其实现方式是使用量词。例如 {m,n} ,连续出现最少 m 次,最多 n 次。
正则表达式/ab{2,5}c/表示匹配这样一个字符串:
第一个字符是a,接下来是2到5个字符b,最后是字符c