3.3 其他锚位符

与锚位符^相似,以下简写式匹配主题词的起始:

  1. \A

这个写法不是在所有的正则表达式程序中都可以使用的,但可以在Perl和PCRE中使用。要匹配主题词的结尾,可以使用:

  1. \Z

在某些上下文中还可用:

  1. \z

pcregrep是带有PCRE库的grep版本。(如何得到pcregrep请参见3.7节。)安装之后,要使用以上语法,则这样写:

  1. pcregrep c '\A\s*(THE|The|the)' rime.txt

单词the出现在行首附近位置且之前有(一个或多个)空格的次数为108次,命令-c会返回这个次数。接下来输入命令:

  1. pcregrep n '(MARINERE|Marinere)(.)?\Z' rime.txt

这一命令会匹配一行(主题词)尾部的MARINERE或Marinere,之后是任何可选字符,在本例中可选字符就是标点符号或者字母S。(点号两边的括号不是必需的。)

可以看到输出为:

  1. 1:THE RIME OF THE ANCYENT MARINERE,
  2. 10: It is an ancyent Marinere,
  3. 38: The bright-eyed Marinere.
  4. 63: The bright-eyed Marinere.
  5. 105: "God save thee, ancyent Marinere!
  6. 282: "I fear thee, ancyent Marinere!
  7. 702: He loves to talk with Marineres

pcregrep的-n选项在输出的每行起始处显示行号。pcregrep与grep的命令行选项十分相似。要了解所有选项,输入:

  1. pcre --help