正则表达式是一些用来匹配和处理文本的字符串。正则表达式是用正则表达式语言创建的。本文介绍正则表达式语言的规则。
正则表达式可视化工具
| 元字符 | 说明 |
|---|---|
| . | 匹配任意单个字符 |
| | | 逻辑或操作符 |
| [ ] | 匹配该字符集合中的一个字符 |
| [ ^ ] | 排除该字符集合 |
| - | 定义一个范围(例如 [A - Z] ) |
| \ | 对下一个字符转义 |
| 元字符 | 说明 |
|---|---|
| * | 匹配前一个字符(子表达式)的零次或多次重复 |
| *? | * 的懒惰型版本 |
| + | 匹配前一个字符(子表达式)的一次或多次重复 |
| +? | + 的懒惰型版本 |
| ? | 匹配前一个字符(子表达式)的零次或一次重复 |
| { n } | 匹配前一个字符(子表达式)的 n 次重复 |
| { m, n } | 匹配前一个字符(子表达式)的至少 m 次且至多 n 次重复 |
| { n, } | 匹配前一个字符(子表达式)的 n 次或更多次重复 |
| { n, }? | { n, }的懒惰型版本 |
| 元字符 | 说明 |
|---|---|
| ^ | 匹配字符串的开头 |
| \A | 匹配字符串的开头 |
| $ | 匹配字符串的结尾 |
| \Z | 匹配字符串的结尾 |
| < | 匹配单词的开头 |
| > | 匹配单词的结尾 |
| \b | 匹配单词边界(开头和结尾) |
| \B | \b 的反义 |
| 元字符 | 说明 |
|---|---|
| (?m) | 多行模式 |
| 元字符 | 说明 |
|---|---|
| [ \b ] | 退格字符 |
| \c | 匹配一个控制字符 |
| \d | 匹配任意数字字符 |
| \D | \d 的反义 |
| \f | 换页符 |
| \n | 换行符 |
| \r | 回车符 |
| \s | 匹配任意空白字符 |
| \S | \s 的反义 |
| \t | 制表符(Tab 键) |
| \v | 垂直制表符 |
| \w | 匹配任意字母数字字符或下划线字符 |
| \W | \w 的反义 |
| \x | 匹配一个十六进制数字 |
| \0 | 匹配一个八进制数字 |
| 元字符 | 说明 |
|---|---|
| ( ) | 定义一个子表达式 |
| \1 | 匹配第一个子表达式;\2 匹配第二个子表达式,以此类推 |
| ?= | 肯定式向前查看 |
| ?<= | 肯定式向后查看 |
| ?! | 否定式向前查看 |
| ? | 否定式向后查看 |
| ? ( ) | 条件(if then) |
| ? ( ) | | 条件(if then else) |
| 元字符 | 说明 |
|---|---|
| \E | 结束 \L 或 \U 转换 |
| \l | 把下一个字符转换为小写 |
| \L | 把后面的字符转换为小写,直到遇见 \E 为止 |
| \u | 把下一个字符转换为大写 |
| \U | 把后面的字符转换为大写,直到遇见 \E 为止 |