国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python中如何使用正則表達式的非貪婪模式示例

2020-01-04 16:34:14
字體:
來源:轉載
供稿:網友

前言

本文主要給大家介紹了關于python/270529.html">python使用正則表達式的非貪婪模式的相關內容,分享出來供大家參考學習,下面話不多說了,來一起詳細的介紹吧。

在正則表達式里,什么是正則表達式的貪婪與非貪婪匹配

如:String str="abcaxc";

  Patter p="ab*c";

貪婪匹配:正則表達式一般趨向于最大長度匹配,也就是所謂的貪婪匹配。如上面使用模式p匹配字符串str,結果就是匹配到:abcaxc(ab*c)。

非貪婪匹配:就是匹配到結果就好,就少的匹配字符。如上面使用模式p匹配字符串str,結果就是匹配到:abc(ab*c)。

解決這個問題,可以采用: 

正則引擎默認是貪婪的,當出現"*"時,它會盡量去匹配盡可能長的字符串。

 一個用于修正以上問題的可能方案是用"*"的惰性代替貪婪性。你可以在"*"后面緊跟一個問號"?"來達到這一點 
這告訴正則引擎,盡可能少的重復上一個字符。

如下面的例子:

#python 3. 6 #蔡軍生 #http://blog.csdn.net/caimouse/article/details/51749579 # from re_test_patterns import test_patterns  test_patterns(  'abbaabbba',  [('ab*?', 'a followed by zero or more b'),   ('ab+?', 'a followed by one or more b'),   ('ab??', 'a followed by zero or one b'),   ('ab{3}?', 'a followed by three b'),   ('ab{2,3}?', 'a followed by two to three b')], ) 

輸出結果如下:

'ab*?' (a followed by zero or more b) 'abbaabbba' 'a' ...'a' ....'a' ........'a''ab+?' (a followed by one or more b) 'abbaabbba' 'ab' ....'ab''ab??' (a followed by zero or one b) 'abbaabbba' 'a' ...'a' ....'a' ........'a''ab{3}?' (a followed by three b) 'abbaabbba' ....'abbb''ab{2,3}?' (a followed by two to three b) 'abbaabbba' 'abb' ....'abb'

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高陵县| 兴和县| 涿州市| 岗巴县| 商河县| 衡水市| 巢湖市| 屏东市| 定结县| 宁蒗| 永德县| 四会市| 江津市| 六盘水市| 揭东县| 神木县| 水城县| 德州市| 封开县| 呼伦贝尔市| 沁源县| 潢川县| 汾阳市| 屏南县| 从江县| 栾城县| 天津市| 余姚市| 北宁市| 浠水县| 弋阳县| 石台县| 博客| 临泽县| 资源县| 广宗县| 潮安县| 肥乡县| 溧阳市| 明溪县| 无为县|