文本处理三剑客(二)
egrep:扩展正则表达式;
egrep -G:基本正则表达式;
fgrep:不支持正则表达式(查询数据量比较大的文件时比较方便)
grep=fgrep
egrep=grep -E:支持扩展正则表达式实现类似于grep文件过滤功能;
扩展正则元字符
1.字符匹配(与正则表达式一样)
".":匹配任意单个字符 grep 'r..t' /etc/passwd
[] :匹配指定范围内任意单个字符
[^]:匹配指定范围外的任意字符
2.次数匹配(比正则表达式少了一个"\")
*: 匹配前面字符任意次;0,1,多次
.*:任意长度字符
?:匹配其前面字符0次或1次,即前面字符可有可无
+:匹配前面字符至少1次或多次
{m}:匹配前面字符m次
{m,n}:区配前面字符至少m次,至多 n次
{0,n}:区配前面字符至多n次
{m,}:区配前面字符至少m次
3.位置锚定与正则表达式一样)
^:行首锚定,用于模式的最左侧
$:行尾锚定,用于最右侧
^$:空白行
^PATTERN$:用于PATTERN 匹配整行,行首PATTERN开头,行尾PATTERN结尾
\<或\b:左词首;\>或\b右词尾
\<PATTERN\>:匹配完整单词
4.分组及引用(比正则表达式少了一个"\")
():将一个或多个字符捆绑在一起,当作一个整体进行处理
(xy)*ab
\1:模式从左侧起,第一个左括号以及与之匹配的右括号之间的模式所匹配的字符;
\2:模式从左侧起,第二个左括号以及与之匹配的右括号之间的模式所匹配的字符;
\3:模式从左侧起,第三个左括号以及与之匹配的右括号之间的模式所匹配的字符;
5.或
a|b a或b
例:(C|c)at Cat或cat
C|cat C或cat
浙公网安备 33010602011771号