《精通正则表达式》

Jeffrey E.F.Friedl

许多系统——例如DOS、MacOS、Windows、Unix等等——都对应有免费提供的egrep。在本书的网页http://regex.info上可以找到获得对应读者操作系统的egrep拷贝的链接。

匹配引号内的字符串最简单的办法是使用这个表达式:「"[^"]*"」。

Python中的正则处理 最后我们来看Python中「Subject」的例子,Python采用的也是面向对象式的办法。

多于匹配成功下限的字符。 匹配优先的性质可以非常有用(有时候也非常讨厌)。它可以用来解释「[0-9]+」为什么能匹配March·1998中的所有数字。1匹配之后,实际上已经满足了成功的下限,但此正则表达式是匹配优先的,所以它不会停在此处,而会继续下去,继续匹配‘998’,直到这个字符串的末尾(因为「[0-9]」不能匹配字符串最后的空档,所以会停下来)

事实上,可能还存在一种出乎读者预料的情况,因为在大多数流派中,「[^"]」能够匹配换行符,而点号则不能。如果不想让表达式匹配换行符,可以使用「[^"\n]」。

开始的「<B>」匹配之后,「.*?」首先决定不需要匹配任何字符,因为它是忽略优先的。于

我们知道,使用匹配优先星号的「".*"」匹配最长的结果,而使用忽略优先星号的「".*?"」匹配最短的结果。