正则的用途
应用场景
应用
模式
Regular Expression
标准
规范
可视化工具
文档
字符
锚字符
| 标题文字 |
标题文字 |
标题文字
|
^ |
es5 |
示例
|
$ |
es5 |
示例
|
\b |
es5 |
示例
|
\B |
es5 |
示例
|
(?=p) |
es5 |
示例
|
(?!p) |
es5 |
示例
|
(?<=p) |
es6 |
示例
|
(?<!p) |
es6 |
示例
|
(?:) |
|
匹配冒号后的内容但是不获取匹配结果;不进行储存供以后使用
|
文摘
工具
web 可视化
匹配
模糊匹配
横向模糊匹配
纵向模糊匹配
贪婪匹配
惰性匹配
引擎
实现方式
正则库
正则替换
| $ number |
包括替换字符串中的由 number标识的捕获组所匹配的最后一个子字符串,其中 number 是一个十进制值。 |
示例
|
| ${ name } |
包括替换字符串中由 (?<name> ) 指定的命名组所匹配的最后一个子字符串。 |
示例
|
| $$ |
包括替换字符串中的单个“$”文本。 |
示例
|
| $& |
包括替换字符串中整个匹配项的副本。 |
示例
|
| $` |
包括替换字符串中的匹配项前的输入字符串的所有文本。 |
示例
|
| $' |
包括替换字符串中的匹配项后的输入字符串的所有文本。 |
示例
|
| $+ |
包括在替换字符串中捕获的最后一个组。 |
示例
|
| $_ |
包括替换字符串中的整个输入字符串。 |
示例
|
语言
匹配器
| 匹配器
|
复杂度
|
描述
|
| NFA
|
构造,匹配
|
提供longest-leftmost匹配,
|
| DFA
|
,最小化 (),匹配
|
不需要回溯,
不支持捕获组,
不支持反向引用和$number,
使用DFA引擎的语言和工具主要有awk、egrep 和 lex
|
n=regex长度,m=串长,k=字母表大小,n=原始的dfa大小
Regular实例
场景
error
- Parsing error: invalid-first-character-of-tag-name
‘<’ 原始码为 <‘>’ 原始码为 >
参考