Python 正则表达式 匹配任意字符
.(句點)匹配除了換行之外的所有一個字符, .*(點-星)匹配除了換行外的所有字符
>>>
>>> r=re.compile(r'.*')
>>> r.search('How are you\nFine thank you and you\nI am fine too').group()
'How are you'
>>>
這個例子可以看出.*(點-星)匹配除了換行外的所有字符,但無法匹配換行符,如何匹配包括換行符的所有字符呢?
1、通過傳入re.DOTALL或者re.S作為re.compile()的第二個參數
>>>
>>> r=re.compile(r'.*',re.DOTALL)
>>> r.search('How are you\nFine thank you and you\nI am fine too').group()
'How are you\nFine thank you and you\nI am fine too'
>>> r=re.compile(r'.*',re.S)
>>> r.search('How are you\nFine thank you and you\nI am fine too').group()
'How are you\nFine thank you and you\nI am fine too'
>>>
2、通過? (.|\n)*? 正則表達式來匹配所有字符
>>>
>>> r=re.compile(r'(.|\n)*')
>>> r.search('How are you\nFine thank you and you\nI am fine too').group()
'How are you\nFine thank you and you\nI am fine too'
>>>
除了re.DOTALL外,re.IGNORCASE(等價于re.I),re.MULTILINE(re.M),也是很有用的參數
re.IGNORCASE可以忽略大小寫
>>>
>>> r=re.compile(r'hello',re.I)
>>> r.findall('Hello hello world heLLo')
['Hello', 'hello', 'heLLo']
>>>
?
轉載于:https://www.cnblogs.com/pigwan7/p/7814777.html
總結
以上是生活随笔為你收集整理的Python 正则表达式 匹配任意字符的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 动态获取本机IP
- 下一篇: 在windows 10下安装python