zoukankan      html  css  js  c++  java
  • 第11.8节 Python正则表达式的重复匹配模式及元字符“?”、 “*”、 “+”功能介绍

    符号“?”、“”、“+”这三个元字符修饰符在Python中都表示重复匹配的模式,即要求匹配的字符串满足重复次数的要求,但具体重复次数要求不同,其中:
    “?”:表示重复0-1次,即匹配字符串可以不出现或最多出现一次,如ab? 会匹配 ‘a’ 或者 ‘ab’;
    ”:表示重复0-n次,即匹配字符串可以不出现或出现多次,最多次数不受限,ab* 会匹配 ‘a’, ‘ab’, 或者 'a’后面跟随任意个’b’;
    “+”:表示重复1-n次,即匹配字符串至少出现一次,最多次数不受限, ab+ 会匹配 ‘a’ 后面跟随1个以上到任意个 ‘b’,它不会匹配 ‘a’。

    注意:
    1、 “?”、“”、“+”这三个元字符不应该在同一搜索内容后出现;
    2、 “?”、“
    ”、“+”这三个元字符必须出现在要重复内容的后面,且只影响这三个元字符前面的最后一个搜索单元。一个搜索单元是指:
    1)一个普通字符;
    2)或一个不包含重复次数要求的搜索模式串
    3)一个以“()”标识的搜索模式子串。
    3、 “?”、“*”、“+”这三个元字符在字符集中仅匹配自身。
    案例:

    >>> re.findall("第[一-十]?[章回]+(.*)",'第二回 悟彻菩提真妙理 断魔归本合元神 ')
    	       
    [' 悟彻菩提真妙理u3000断魔归本合元神 ']
    >>> 
    
    

    老猿Python,跟老猿学Python!
    博客地址:https://blog.csdn.net/LaoYuanPython

    请大家多多支持,点赞、评论和加关注!谢谢!
    *

  • 相关阅读:
    mysql #与$的区别
    linux连接mysql
    19年春第十三周学习
    第二阶段冲刺-02
    第二阶段冲刺-01
    19年春第十二周学习
    第一阶段SCRUM冲刺-10
    第一阶段SCRUM冲刺-09
    第一阶段SCRUM冲刺-08
    19年春第十一周学习
  • 原文地址:https://www.cnblogs.com/LaoYuanPython/p/13643639.html
Copyright © 2011-2022 走看看