python正则表达式示例

本文深入探讨了正则表达式的各种高级用法,包括特殊标志、非捕获组、注释、前瞻断言等,并通过实例展示了这些特性的实际应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

------(?iLmsux)---------re.i|re.L...---------------------------------------------------------------

>>> print re.findall(r'(?i)bd','abDcc134')
['bD']
>>> print re.findall(r'bd','abDcc134')
[]
>>> print re.findall(r'(?iLmsux)bd','abDcc134')
['bD']


------(?:...){m,n}---------...{m,n}合并未一组匹配--------------------------------------------------

>>> print re.findall(r'(?:abc)','abcabcabcabcabc')
['abc', 'abc', 'abc', 'abc', 'abc']
>>> print re.findall(r'(?:abc){3}','abcabcabcabcabc')
['abcabcabc']
>>> print re.findall(r'(?:abc){}','abcabcabcabcabc')
[]
>>> print re.findall(r'(?:abc)+','abcabcabcabcabc')
['abcabcabcabcabc']
>>> print re.findall(r'(?:abc)*','abcabcabcabcabc')
['abcabcabcabcabc', '']
>>> print re.findall(r'(?:abc)','abcabcabcabcabc')
['abc', 'abc', 'abc', 'abc', 'abc']


------(?#...)---------...注释-----------------------------------------------------------------------

>>> print re.findall(r'(?#abc)','abcabcabcabcabc')
['', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '']
>>> print re.findall(r'a(?#abc)bc','abcabcabcabcabc')
['abc', 'abc', 'abc', 'abc', 'abc']


------(?=...)---------...作为匹配条件(匹配字符后必须匹配...),但不计入匹配字符----------------------

>>> print re.findall(r'a(?=\d)','abcabcabcabcabca12')
['a']
>>> print re.findall(r'(a|b)(?=\d)','abcabcabcabcabca12b12')
['a', 'b']


------(?!...)---------...作为反匹配条件(匹配字符后必须不匹配...),但不计入匹配字符------------------

>>> print re.findall(r'(a|b)(?!\d)','abca12b12')
['a', 'b']


------(?<=...)---------...作为前匹配条件(匹配字符前必须匹配...),但不计入匹配字符-------------------

>>> print re.findall(r'(?<=\d)(a|b)','abca12b12')
['b']


------(?<!...)---------...作为前反匹配条件(匹配字符前必须不匹配...),但不计入匹配字符-----------------

>>> print re.findall(r'(?<!\d)(a|b)','abca12b12')
['a', 'b', 'a']


------...?---------匹配的贪婪与非贪婪,python默认未贪婪,即尽可能匹配多的字符------------------------

>>> print re.findall(r'ab*','abbbbbbbbc')
['abbbbbbbb']
>>> print re.findall(r'ab*?','abbbbbbbbc')
['a']
>>> print re.findall(r'ab+?','abbbbbbbbc')
['ab']
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值