zoukankan      html  css  js  c++  java
  • 3贪婪匹配与勉强匹配

    """贪婪匹配与勉强匹配(最小匹配)"""


    """
    贪婪匹配:在匹配正则表达式时,使用尽可能长的子串去匹配
    勉强匹配(最小匹配):在匹配正则表达式时,使用尽可能短的子串去匹配
    """

    import re

    # re* 匹配0个或多个的表达式。
    # <re.Match object; span=(0, 6), match='abbbbb'>
    print(re.match(r'ab*', 'abbbbbc')) # 贪婪匹配
    # <re.Match object; span=(0, 1), match='a'>
    print(re.match(r'ab*?', 'abbbbbc')) # 勉强匹配

    # <re.Match object; span=(0, 2), match='ab'>
    print(re.match(r'ab?', 'abbbbbc')) # re? 匹配0个或1个由前面的正则表达式定义的片段,贪婪方式
    # <re.Match object; span=(0, 1), match='a'>
    print(re.match(r'ab??', 'abbbbbc')) # re?? 匹配0个或1个由前面的正则表达式定义的片段,勉强匹配

    # <re.Match object; span=(0, 4), match='abbb'>
    print(re.match(r'ab{3}', 'abbbbbc'))
    # <re.Match object; span=(0, 4), match='abbb'>
    print(re.match(r'ab{3}?', 'abbbbbc'))
    # <re.Match object; span=(0, 6), match='abbbbb'>
    print(re.match(r'ab{3,}', 'abbbbbc'))
    # <re.Match object; span=(0, 4), match='abbb'>
    print(re.match(r'ab{3,}?', 'abbbbbc'))


    
    
  • 相关阅读:
    JAVA Number类
    ConcurrentHashMap.Segment源码解析
    Java Concurrent包初探
    JAVA枚举类
    构造不可变类及其优点
    Unsafe类初探
    Paxos made simple 翻译尝试
    平行二叉堆和优先队列
    Android OpenCV学习
    Android-Java和HTML5交互-混合开发-优化
  • 原文地址:https://www.cnblogs.com/sruzzg/p/12989687.html
Copyright © 2011-2022 走看看