^ : 一行的开始
$ : 一行的结束
[] : 字符组,在同一个位置匹配若干个字符 如 gr[ae]y :匹配 gray grey
- : 字符组元字符(连字符),表示一个范围。[0-3] 和 [0123] 是一样的。
注意:只有在字符组内部,连字符才是元字符——否则它就只能匹配普通的连字符号(如果出现在字符组的开头,它表示的就只是一个普通字符,而不是一个范围)。在字符组内,问号和点号也不会当作元字符处理。
^ : 排除型字符组,和行首一样,但在字符组中就表示排除。如:[^1-6] 匹配除了1到6以外的任何字符。
注意:^在字符组内部(而且必须是紧接在字符组的第一个方括号之后),它才是一个元字符。
. : 匹配任意字符。
注意:点号(.)在字符组内和字符组外的区别。
| : 匹配任意子表达式。
i :忽略大小写。
\< : 单词的开头(某些版本的 egrep 可能不支持)。
\> : 单词的结尾(某些版本的 egrep 可能不支持)。
? : 可选项元素。代表 ? 之前的字符容许出现。它只用于之前紧邻的元素。单次可选。
+ : 之前紧邻的元素出现一次或多次。至少一次
* : 之前紧邻的元素出现任意多次,或者不出现。任意次数。
{} : 区间。如{3,12} 容许的重现次数在 3 到 12 之间。
\ : 转义。如果需要匹配的某个字符本身就是元字符,就需要用到转义。
注意:在字符组内部无效。
() : 限定多选结构的范围,标注量词作用的元素,为反向引用 "捕获" 文本。
\1,\2 : 反向引用。匹配之前的第一、第二组括号内的字表达式匹配的文本。