次数匹配类:该类字符前面的一个字符可以出现的次数:
*:其前面的字符可以出现任意次,即:0次,1次或多次;
?:其前面的字符可有可无,即:0次或1次;
+:其前面的字符至少出现一次;
{m,n}:其前面的字符至少出现m次,最多出现n次;
{m}:其前面���字符必须出现m次;
{m,}:其前面的字符至少出现m次;
{,n}:其前面的字符出现最多不超过n次;
注意:在正则表达式中,表示任意长度的任意字符:.*
位置锚定字符:
行锚定:
行首锚定:^
行尾锚定:$
字锚定:
字首锚定:\<或\b
字尾锚定:\>或\b
分组与前向引用字符:
():将小括号中包含的内容作为一个不可分割的整体来处理;
\1,\2,\3...:前向引用
正则表达式处理引擎的内置变量,1表示前面所出现的第一组小括号中括选的内容,2表示前面所出现的第二组小括号中括选的内容;...
(string1(string2)):1表示string1,2表示string2;
(string1).*(string2):1表示string1,2表示string2;
或者:
|:将其左右的字符或字符串当做整体来对待;
"C|cat" C cat
grep系:
grep:仅支持基本正则表达式元字符;
egrep:可以支持扩展正则表达式元字符;
fgrep:不支持任何形式的正则表达式元字符,将所有的字符当做没有任何特殊意义的普通文本字符;
常用选项:
-A num:同时显示被PATTREN匹配到的行及其后续num行;
-B num:同时显示被PATTREN匹配到的行及其前面num行;
-C num:同时显示被PATTREN匹配到的行及其前后num行;
--color[=when]:以高亮颜色显示被匹配到的内容;默认命令就有
[root@localhost ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
-c,--count:不输出被PATTREN匹配的行的内容,而是输出被PATTERN匹配到的行数;
-E:可以是grep命令支持扩展正则表达式元字符;相当于执行egrep命令
-F:相当于fgrep;
-e:指定多个PATTERN在一个命令行中生效;
-f:将从指定的文件中读取多个PATTERN用于一次搜索;
-i:忽略文件中字符大小写
-o:仅显示被PATTERN匹配到的部分,关闭贪婪模式;
-q:安静模式;相当于 grep > /dev/null
-v:选择没有被PATTERN匹配到的行;