• Python 正则表达式 匹配任意字符


      .(句点)匹配除了换行之外的所有一个字符, .*(点-星)匹配除了换行外的所有字符

    >>>
    >>> r=re.compile(r'.*')
    >>> r.search('How are you Fine thank you and you I am fine too').group()
    'How are you'
    >>>

    这个例子可以看出.*(点-星)匹配除了换行外的所有字符,但无法匹配换行符,如何匹配包括换行符的所有字符呢?

    1、通过传入re.DOTALL或者re.S作为re.compile()的第二个参数

    >>>
    >>> r=re.compile(r'.*',re.DOTALL)
    >>> r.search('How are you Fine thank you and you I am fine too').group()
    'How are you Fine thank you and you I am fine too'

    >>> r=re.compile(r'.*',re.S)
    >>> r.search('How are you Fine thank you and you I am fine too').group()
    'How are you Fine thank you and you I am fine too'
    >>>

    2、通过  (.| )*  正则表达式来匹配所有字符

    >>>
    >>> r=re.compile(r'(.| )*')
    >>> r.search('How are you Fine thank you and you I am fine too').group()
    'How are you Fine thank you and you I am fine too'
    >>>

      除了re.DOTALL外,re.IGNORCASE(等价于re.I),re.MULTILINE(re.M),也是很有用的参数

    re.IGNORCASE可以忽略大小写

    >>>
    >>> r=re.compile(r'hello',re.I)
    >>> r.findall('Hello hello world heLLo')
    ['Hello', 'hello', 'heLLo']
    >>>

  • 相关阅读:
    异常处理
    集合面试题
    数据结构
    集合遍历
    集合汇总
    Collections工具类
    HashMap和hashTable的区别
    Map接口和Collection接口的区别
    Spark应用远程调试
    使用 maskView 设计动画
  • 原文地址:https://www.cnblogs.com/pigwan7/p/7814777.html
Copyright © 2020-2023  润新知