Python RE库的贪婪匹配和最小匹配

版权声明:转载请声明原文链接地址,谢谢! https://blog.csdn.net/weixin_42859280/article/details/84404719

在这里插入图片描述在这里插入图片描述

>>> 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'
>>>

在这里插入图片描述
在这里插入图片描述

课程地址:https://www.icourse163.org/learn/BIT-1001870001?tid=1003245012#/learn/content?type=detail&id=1004574448&cid=1005754054

猜你喜欢

转载自blog.csdn.net/weixin_42859280/article/details/84404719
今日推荐