2011-09-30 68 views
28

我有一段時間試圖將我的經驗與JavaScript正則表達式轉移到Python。Python的正則表達式字符串匹配?

我只是試圖讓這個工作:

print(re.match('e','test')) 

...但它打印無。如果我這樣做:

print(re.match('e','est')) 

它匹配...它默認匹配字符串的開頭嗎?當它匹配時,我如何使用結果?

我該如何進行第一場比賽?是否有更好的文檔比python網站提供?

回答

53

re.match隱含地將^添加到您的正則表達式的開始。換句話說,它只匹配字符串的開頭。

re.search將在所有位置重試。

一般而言,我建議使用re.search並在需要時明確添加^

http://docs.python.org/library/re.html

+1

微妙的行爲。 –

9

的文檔是明確的,我認爲。

re.match(圖案,字符串[,標誌])¶

If zero or more characters **at the beginning of string** match the 

正則表達式模式,返回一個對應的MatchObject 實例。如果字符串與模式不匹配,則返回None;注意 這與零長度匹配不同。

相關問題