2013-01-16 36 views
0

我正在閱讀Dive into Python 3關於正則表達式,特別是使用re.VERBOSE。我試圖搜索一個字符串,但它總是返回「無」。例如:正則表達式和詳細python 3

import re 
pattern = ''' 
testing 
''' 

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

我以爲這應該會返回非None的內容,因爲「測試」中存在字符「test」的模式。我還認爲,如果它一直是這樣的:

pattern = ''' 
^testing$ 
''' 

然後,它是有道理的,如果我搜索了相同的字符串,我會得到無的返回值。不過,無論如何,我似乎總是得到None的返回值。我究竟做錯了什麼?

回答

4

你有你的模式和文本到搜索混合起來。

您正在查找testing的文字test,而後者不夠長。 :-)

如果顛倒了兩(模式test,文字testing)工作的事情:

>>> import re 
>>> pattern = ''' 
... test 
... ''' 
>>> print(re.search(pattern, 'testing', re.VERBOSE)) 
<_sre.SRE_Match object at 0x1062f4c60>