一. “.” 符号 (一个英文句号)
用于匹配换行符之外的任意一个字符
如 root 可用r…t来匹配
二. “*”符号
重复匹配前一个字符
如ab abc abb等可用ab匹配
. 表示任意长度不包含换行符的字符
三. "{n,m}"符号
重复匹配前一个字符指定次数
{n} 重复匹配前一个字符n次
{n,}重复匹配前一个字符n次以上
{n,m} 重复匹配前一个字符n到m次
四. “^”符号
匹配以固定字符开头的行
^root 匹配以root开头的行
五. “$”符号
匹配以固定字符结尾的行
root$ 匹配以root结尾的行
六. “[ ]”符号
匹配符号内出现的任意字符-是必须,表示从xx到xx
[A-D]匹配A到D
[A-Da-d]匹配A到D和a到d
[^a-d]匹配a到d之外的字符 ^出现在这里表示取反
七. “\”符号
转义字符,然后面的字符不被解释
八. “\<”和“\>”符号
\<hello 匹配用hello开头的单词
hello\> 匹配用hello结束的单词
\<hello\> 匹配hello单词
九. “\d”符号
匹配一个数字,这是一种Perl兼容模式表达式,使用时需要加上-P参数
如 grep -P “\d”
十. “\b”符号
匹配单词边界
\bhello\b J精确匹配hello单词
十一. “\B”匹配非单词边界
hello\B 可以匹配helloworld中的hello
十二. “\w”和“\W”符号
\w 匹配字母数字和下划线
\W匹配非字母非数字和非下划线
十三. “\r” “\n” “\t” “\f” “\s” “\S” 符号
\n 匹配换行符
\r 匹配回车符
\t 匹配制表符
\f 匹配一个换页符
\s 匹配任何空白字符
\S 匹配任何非空字符
十四. 扩展的正则表达式
使用扩展的正则表达式时,需要使用egrep命令
? 匹配前一个字符0次或1次
+ 匹配前一个字符1次以上
| 或,连接不同的匹配选项,并列关系
() 用以将不同的 | 表示的匹配分支括起来
十五. 通配符
*代表一个或者多个字符
? 任意一个字符
{} 匹配所有括号内以逗号隔开的字符
^ ! 取反或逻辑非