正则表达式基础
修饰符
g:global,全文搜索,若不添加,则搜索到第一个匹配即停止。
i:ignore case,忽略大小写,正则表达式是大小写敏感的。
m:multiple lines,多行搜索,搜索时识别换行符。
字符类
当需要匹配一类字符时,可以使用[ ]来构造一个简单的类
例如:表达式[abc]把字符 a、b、c 归位一类,表达式可以匹配这类字符,即匹配其中之一
贪婪模式
默认情况下,正则表达式会尽可能多的匹配
非贪婪模式
与贪婪模式相反,即尽可能少的匹配,一旦成功匹配就不再继续尝试其他的可能性。在模式后面加上?
分组
例如: Byron{3}表示对 n 匹配 3 次,而不是 Byron。如果要对 Byron 匹配三次,就需要对其进行分组。
前瞻
正向前瞻,exp(?=assert)
负向前瞻,exp(?!assert)
字符串正则方法
search(reg),用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。返回第一个匹配结果的 index,没有匹配到返回-1。不执行全局匹配。
match(reg),检索字符串以找到一个或多个与 regexp 匹配的文本,未找到返回 null,找到后返回一个数组。与 RegExp 的 exec()方法相同。
split(reg),利用 regexp 匹配结果作为分隔符对字符串进行分割,返回一个数组。
replace(reg, newStr),将 regexp 的匹配结果替换成 newStr,返回一个新字符串。