Python RE庫的貪婪匹配和最小匹配
>>> import re
>>> match = re.search(r'PY.*N', 'PYANBNCNDN')
>>> match.group(0)
'PYANBNCNDN'
>>>
其中滿足條件的有:
1. PYAN
2. PYANBN
3. PYANBNCN
4. PYANBNCNDN
結果輸出了一個最長的:PYANBNCNDN
叫做:貪婪匹配!
>>> import re
>>> match = re.search(r'PY.*N', 'PYANBNCNDN')
>>> match.group(0)
'PYANBNCNDN'
>>> match = re.search(r'PY.*N', 'PYANBNCND')
>>> match.group(0)
'PYANBNCN'
>>> match = re.search(r'PY.*N', 'PYABNCND')
>>> match.group(0)
'PYABNCN'
>>> match = re.search(r'PY.*N', 'PYABHDHDH')
>>>
最上面的那一個就是沒有滿足條件的!
那麼,如何輸出最小的匹配呢?
match = re.search(r'PY.*?N', 'PYANBNCNDN')
>>> import re
>>> m = re.search(r'PY.*N', 'PYDFSNDFNJNCNIS')
>>> m.group(0)
'PYDFSNDFNJNCN'
>>> m = re.search(r'PY.*?N', 'PYDFSNDFNJNCNIS')
>>> m.group(0)
'PYDFSN'
>>>
相關文章
- Python 正則是否存在前向貪婪匹配呢?Python
- python的re正則匹配Python
- 【python技巧】文字處理-re庫字元匹配Python字元
- 11.一個正規表示式案例讓你馬上明白貪婪匹配與禁止貪婪! 超級實用!
- Java 正規表示式匹配模式(貪婪型、勉強型、佔有型)Java模式
- Python 中的貪婪排名演算法Python演算法
- 正規表示式:貪婪模式與非貪婪模式模式
- 正規表示式貪婪模式與非貪婪模式模式
- 【正規表示式系列】貪婪與非貪婪模式模式
- LeetCode-10. 正規表示式匹配(Python-re包)LeetCodePython
- BZOJ 3399 [Usaco2009 Mar]Sand Castle城堡:貪心【最小匹配代價】AST
- python如何匹配txtPython
- 二分圖的最大匹配、完美匹配和匈牙利演算法演算法
- Python正則匹配中文Python
- 貪婪演算法回顧演算法
- 正規表示式 貪婪模式模式
- e成科技人崗匹配中的匹配模型模型
- POJ 3565 Ants (最小權完美匹配 KM演算法)演算法
- python 影像與影像模型匹配Python模型
- python 正規表示式匹配Python
- RE2/J: 線性時間的正規表示式匹配Java工具Java
- 貪心演算法(貪婪演算法,greedy algorithm)演算法Go
- Mensa是Java的模式匹配開源庫Java模式
- rabbitMQ和對應的erlang版本匹配MQ
- 字串匹配字串匹配
- 模板匹配
- mongo的‘模糊匹配’Go
- 【USACO題庫】 Greedy Gift Givers貪婪的禮物送禮者c++C++
- python3怎樣匹配中文Python
- python 相似語句匹配(非機器學習)Python機器學習
- 資料庫like匹配的實現猜測資料庫
- excel表1和表2資料匹配 vlookup跨表兩個表格匹配Excel
- lua的string庫與強大的模式匹配模式
- 最大匹配、最小頂點覆蓋、最大獨立集、最小路徑覆蓋(轉)(再轉)
- Swift中的模式匹配Swift模式
- 聊聊 scala 的模式匹配模式
- intentFiltger的匹配原則Intent
- Scala模式匹配模式