2014-05-25 99 views
0

我使用Python和我有字符串看起來喜歡這樣的:如何匹配mediawiki框中包含換行符的字符串?

anything include {{infobox notperson anything include new line}} 
anything 
{{infobox person anything 
many new lines and any charachter 
}} 
anything include {{infobox notperson anything include new line}} 

,我想正則表達式這得到整個信息框人面積從{{信息框人到第一}}字符,是信息框區域的結尾。我應該使用哪種正則表達式?

回答

0

您需要使用re.DOTALL標誌爲了讓.匹配換行符:https://docs.python.org/release/3.1.3/library/re.html#re.DOTALL

這就是你要找的正則表達式:

re.compile("\{\{infobox person[^\}]*\}\}",re.DOTALL) 

編輯:爲傑裏指出,由於[^\}]已經匹配換行符,所以不需要使用DOTALL

+0

Err ...''[^ \}] *'不匹配換行're.DOTALL' ... – Jerry

+0

它的工作原理,但有沒有非python,只有正則表達式? – user3649714

+0

@傑裏是的,它的工作原理沒有dotall :)感謝的人。 – user3649714

相關問題