python 正则表达式贪婪模式与非贪婪模式
生活随笔
收集整理的這篇文章主要介紹了
python 正则表达式贪婪模式与非贪婪模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1?貪婪模式與非貪婪模式 的理解
1.1 貪婪模式:?
是盡可能的多地匹配字符 ,貪婪模式一般是在元符號后面沒有添加?
1.2 非貪婪模式(懶惰模式):
是盡可能的少匹配字符,非貪婪模式一般是元符號后面添加了?
2 demo 解釋貪婪模式與非貪婪模式
例如 python 元符號中 * 代表重復匹配0次或者更多次 ,
2.1 貪婪模式的demo
import re # 導入re 模塊str_content = "abcdefgabcefg" # 要匹配的內容, 對應match 里面的string
str_pattern = re.compile("a.*g")
re_content = str_pattern.match(str_content)
print(re_content.group())
打印結果如下:
2.2 非貪婪模式的demo
import re # 導入re 模塊str_content = "abcdefgabcefg" # 要匹配的內容, 對應match 里面的string
str_pattern = re.compile("a.*?g")
re_content = str_pattern.match(str_content)
print(re_content.group())
打印效果如下
最后補充點知識,python 元字符的含義
| 元字符 | 含義 |
| . | 匹配除換行符以外的任意一個字符 |
| ^ | 匹配行首 |
| $ | 匹配行尾 |
| ? | 重復匹配0次或1次 |
| * | 重復匹配0次或更多次 |
| + | 重復匹配1次或更多次 |
| {n,} | 重復n次或更多次 |
| {n,m} | 重復n~m次 |
| [a-z] | 任意字符 |
| [abc] | a/b/c中的任意一個字符 |
| {n} | 重復n次 |
總結
以上是生活随笔為你收集整理的python 正则表达式贪婪模式与非贪婪模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 天津市海螃蟹批发多少钱一斤?最大最肥大黄
- 下一篇: 一点不懂女人心,哪几个星座是钢铁直男?