字符匹配
字符 | 说明 | 备注 |
---|---|---|
. | 匹配任意单个字符 | |
[ ] | 匹配指定范围内的任意单个字符 | |
[^ ] | 匹配指定范围外的任意单个字符 | |
[:alnum:] | 匹配任意数字或字母 | |
[:alpha:] | 匹配任意英文大小写字母 | |
[:upper:] | 匹配任意大写字母 | 与 [A-Z] 等效 |
[:lower:] | 匹配任意小写字母 | 与 [a-z] 等效 |
[:blank:] | 匹配空白字符(空格和制表符) | |
[:space:] | 匹配任意空白字符,包括空格或 tab 键 | |
[:cntrl:] | 匹配不可打印的控制字符(退格、删除) | |
[:digit:] | 匹配 0-9 之间的任意单个数字 | 与 [0-9] 等效 |
[:xdigit:] | 匹配十六进制数字 | |
[:graph:] | 匹配可打印的非空白字符 | |
[:print:] | 匹配可打印字符 | |
[:punct:] | 匹配任意标点符号 | |
[^[:alpha:]] | 匹配单个非字母字符 | |
[^[:digit:]] | 匹配单个非数字字符 |
次数匹配
字符 | 说明 | 备注 |
---|---|---|
* | 前面的字符出现任意次,包括 0 次 | |
.* | 任意长度的任意字符 | |
\? | 匹配前面的字符 0 次或 1 次 | |
\+ | 匹配前面的字符至少一次 | |
\{n\} | 匹配前面的字符 n 次,精确匹配 | |
\{,n\} | 匹配前面的字符至多 nu 次 | |
\{n,\} | 匹配前面的字符至少 n 次 | |
\{m,n\} | 匹配前面的字符至少 m 次,至多 n 次 |
位置锚定
字符 | 说明 | 备注 |
---|---|---|
^ | 锚定行首 | |
$ | 锚定行尾 | |
^$ | 匹配空行 | |
\< 或 \b | 锚定词首 | |
\> 或 \b | 锚定词尾 | |
\< \> | 匹配整个单词 | |
\B | 匹配非单词边界,与 \b 相反 |
分组引用
字符 | 说明 | 备注 |
---|---|---|
\( \) | 分组 | |
$1,$2 | 引用 | 在分组中,一个括号为一组,$1 开始,$2,$3… |
字符匹配
与基本正则表达式相同
次数匹配
字符 | 说明 | 备注 |
---|---|---|
* | 匹配前面字符任意次,包括0次 | |
.* | 匹配任意长度任意字符 | |
? | 匹配前面字符0次或1次 | |
+ | 匹配前面字符至少一次 | |
{m} | 匹配前面字符m次 | |
{m,n} | 匹配前面字符至少m次,至多n次 |
位置锚定
与基本正则表达式相同
分组
字符 | 说明 | 备注 |
---|---|---|
( ) | 分组 | |
$1,$2 | 向后引用 |
或
字符 | 说明 | 备注 |
---|---|---|
| | 或 |
a|b # a或b
C|cat # C或cat
(C|c)at # Cat或cat
字符 | 说明 | 备注 |
---|---|---|
\d | 匹配任意单个0-9的数字 | |
\D | 匹配任意单个非数字字符 | |
\t | 匹配单个横向制表符,相当于一个tab键 | |
\s | 匹配单个空白字符,包括空格、tab键 | |
\S | 匹配单个非空白字符 | |
\n | 匹配换行符 | |
\w | 匹配 [a-zA-Z0-9_] | |
\W | 匹配 [^a-zA-Z0-9_] |