【发布时间】:2017-01-11 06:49:55
【问题描述】:
我在python2.7中做以下事情
>>> a='hello team 123'
>>> b=re.search('hello team [0-9]+',a)
>>>
>>> b
<_sre.SRE_Match object at 0x00000000022995E0>
>>> b=re.search(r'hello team [0-9]+',a)
>>> b
<_sre.SRE_Match object at 0x0000000002299578>
>>>
现在如您所见,在一种情况下我正在处理原始文本,而在另一种情况下则没有原始文本。
从 SO 上的一篇文章中,我了解到:
r 表示该字符串将被视为原始字符串,这意味着所有转义码都将被忽略。
举个例子:
'\n' 将被视为换行符,而 r'\n' 将被视为字符 \ 后跟 n
那么,为什么我的示例适用于两种情况,即使用r 和没有r?
是不是因为我的例子都没有使用\?
【问题讨论】: