元字符 | 名称 | 匹配对象 |
---|---|---|
. | 点号 | 单个任意字符 |
[...] | 字符组 | 列出的任意字符 |
[^...] | 排除型字符组 | 未列出的任意字符 |
^ | 脱字符 | 行的起始位置 |
$ | 美元符 | 行的结束位置 |
\< | 反斜线-小于 | 单词的起始位置 |
\> | 反斜线-大于 | 单词的结束位置 |
| | 竖线 | 匹配分隔两边的任意一个表达式 |
(...) | 括号 | 匹配分隔两边的任意一个表达式。限制竖线的作用范围 |
- | 横线 | 匹配列出的字符的范围中的任意字符 |
? | 问号 | 量词,可选项,表示可以匹配紧邻问号前面的元素零次或一次,匹配总会成功,不会失败 |
* | 星号 | 量词,表示之前紧邻的元素出现任意次。匹配总会成功,不会失败 |
+ | 加号 | 量词,表示之前紧邻的元素出现一次或多次,如果无法进行任何一次匹配时,则报告匹配失败 |
- 字符组内部,元字符的定义规则(及他们的意义)是不一样的
-
多选项和字符组完全不一样
- 字符组只能匹配一个字符,而多选项可以匹配任意长度的文本
- 多选项没有排除功能
- 一个字符组,即使是排除型字符组,也需要匹配一个字符
例子 | 文字意义 | 应用意义 |
---|---|---|
^wgf$ | 匹配条件是:行开头,然后“w”“g”“f”,然后是行末尾 | 只包含wgf的行,没有多余的单词、空白字符等。 |
^$ | 匹配条件是,行开头,然后是行末尾 | 空行 |
^ | 匹配条件是行的开头 | 无意义!因为每一行都有开头,所以每一行都能匹配,包括空行 |
网友评论