0

我正在阅读关于正则表达式的Dive into Python 3 ,特别是使用 re.VERBOSE。我尝试搜索一个字符串,但它总是返回“无”。例如:

import re
pattern = '''
testing
'''

print(re.search(pattern, 'test', re.VERBOSE))

我原以为这应该返回 None 以外的东西,因为字符“test”的模式存在于“testing”中。我也曾想过,如果它是这样的:

pattern = '''
^testing$
'''

那么如果我搜索相同的字符串,我会得到 None 的返回值是有道理的。但是,无论如何,我似乎总是得到 None 的返回值。我究竟做错了什么?

4

1 回答 1

4

您将模式和文本搜索混合在一起。

您正在寻找testingtext test,而后者还不够长。:-)

如果你颠倒了这两个(模式test,文本testing)的事情工作:

>>> import re
>>> pattern = '''
... test
... '''
>>> print(re.search(pattern, 'testing', re.VERBOSE))
<_sre.SRE_Match object at 0x1062f4c60>
于 2013-01-16T00:51:10.490 回答