正则表达式
特殊字符
限定符 次数匹配
特殊字符匹配
| 符号 | 含义 | 如何匹配本身 |
|---|---|---|
| ? | 最多只出现0次或1次 | \? |
| * | 可以不出现,也可以出现一次或者多次(0次、1次或多次) | \* |
| + | 至少出现一次(1次或多次) | \+ |
其它限定符
| 字符 | 含义 |
|---|---|
| {n} | n是一个非负整数。匹配确定的n次 |
| {n,} | 至少匹配n次 |
| {n,m} | m和n均为非负整数,其中n<=m, 最少匹配n次且最多匹配m次> |
位置匹配
| 符号 | 含义 | 如何匹配本身 |
|---|---|---|
| $ | 匹配字符串的结尾位置。 | \$ |
| () | 标记一个子表达式的开始和结束为止 | \(\) |
| [ | 标记一个中括号表达式的开始 | \[ |
| ^ | 匹配输入字符串的开始位置 | \^ |
| { | 标记限定符表达式的开始 | \{ |
| \b | 匹配一个字边界,即字与空格间的位置 | |
| \B | 非字边界匹配 |
其它
| 符号 | 含义 | 如何匹配本身 | ||
|---|---|---|---|---|
| ` | ` | 指明两项之间的选择 | \` | ` |
| . | 匹配除换行符\n之外的任何单字符 | \. | ||
| \ | 将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, 'n' 匹配字符 'n'。'\n' 匹配换行符。序列 '\' 匹配 "",而 '(' 则匹配 "("。 | \\ |
非打印字符
| 字符 | 描述 |
|---|---|
| \cx | 匹配由x指明的控制字符。eg: \cM匹配一个Control-M或回车符。 x的值为A-Z或a-z之一,否则,将c视为一个原义的'c'字符 |
| \f | 匹配一个换页符 |
| \n | 匹配一个换行符 |
| \r | 匹配一个回车符 |
| \s | 匹配任何空白字符,包括空格、制表符、换页符等等。等价于[\f\n\r\t\v] |
| \S | 匹配任何非空白字符。等价于[^\f\n\r\t\v] |
| \t | 匹配一个制表符 |
| \v | 匹配一个垂直制表符 |