egrep及扩展的正则表达式
- egrep = grep -E
- egrep [OPTION]… PATTERN [FILE]…
- 扩展正则表达式的元字符
- 字符匹配:
- .:匹配任意单个字符
- []:匹配指定范围内的任意单个字符
- [^]:匹配指定范围外的任意单个字符
- 次数匹配:
- *:匹配前面的字符任意次(贪婪模式)
- ?:匹配前面的字符0或1次,即前面的字符可有可无
- +:匹配前面的字符至少一次
- {m}:匹配前面的字符m次
- {m,n}:至少m次,至多n次
- 位置锚定:
- ^:行首锚定,用于模式的最左侧
- $:行尾锚定,用于模式的最右侧
- \<或\b:词首锚定,用于单词模式的左侧
- >或\b: 词尾锚定,用于单词模式的右侧
- 分组
- (): 将一个或多个字符捆绑在一起,当作一个整体进行处理,例如:(xy)*ab
- Note:分组括号中匹配搭配的内容会被正则表达式引擎记录于内部的变量中,这些变量的命名方式为:
- \1:从左侧起,第一个左括号以及与之匹配的有括号之间的模式所匹配的字符
- (ab+(xy)*):
- \1:ab+(xy)*
- \2:xy
- 字符匹配:
- fgrep:不支持正则表达式搜索,但搜索速度更快。