Linux正则表达式-通配符


通配符元字符或者句点(.)被认为是与变量等价的。变量表示算术表达式中的任意值。在正则表达式中,句点(.)是代表除换行符以外的任意字符的通配符(在awk中,句点甚至可以匹配嵌入式换行符)。

假定我们正在描述一个字符序列,使用通配符元字符可以指定任何字符都可以填充的一个位置。
例如,如果要索索包含Intel系统微处理器的讨论文件,使用下面的正则表达式:
80.86
将匹配包含序列"80286,"、"80386,"或"80486."的行。为了匹配小数点或句点,必须用反斜杠转义“点”。

只匹配模式开头或结尾处的任何字符没有什么用。因此,通配符字符通常放在字符或其他元字符的前面或后面。例如,下面编写的正则表达式搜索chapter的序列:
chapter.
它搜索“ 'chapter' 后面跟有任意字符的字符串”。在某些搜索中,这个表达式有可能与固定的字符串模式"chapter"具有相同的匹配。请看下面的示例:

$ grep 'Chapter.' sample
you will find several examples in Chapter 9.
"Quote me ' Chapter and Verse' ," she said.
Chapter Ten

该示列所搜与"chapter" 相匹配的字符串,而使用"chapter" 也将匹配同样的行。然而,有一种不同的情况一一如果"chapter" 出现在行尾。

相关内容