原始字符串中的单反斜杠 - 正则表达式

时间:2015-07-27 03:50:58

标签: python

我正在youtube上观看一些Google课程,目前的主题是正则表达式。遇到下面的代码,有一段代码和结果,我可以使用一些澄清。

为什么以下内容会返回c.l而不是not found?被搜索的模式是一个原始字符串,我认为这意味着反对将被字面上处理。

>>> import re

>>> def Find(pattern, text_string):
...     match = re.search(pattern, text_string)
...     if match:
...         print match.group()
...     else:
...         print 'not found'

>>> Find(r'c\.l', 'c.lled piiig   much better: zysdgs')
c.l

1 个答案:

答案 0 :(得分:3)

它正在使用正则表达式。在正则表达式中,句号代表“匹配任何字符”。但是,该代码的作者并不想要这种功能,他希望确切地匹配一个时期。所以为了表明这一点,他们使用反斜杠字符来逃避这个时期。所以对于正则表达式引擎,表达式意味着“匹配c.l”,它就是这样。