美文网首页
2018-06-19re的高级用法(1)

2018-06-19re的高级用法(1)

作者: 菩灵 | 来源:发表于2018-06-20 21:05 被阅读6次
    1. re.search(正则表达式, 需要匹配的目标字符串)
      从左到右只要找到就匹配,只要能匹配到就行,匹配到一个就结束。
    2. 如果要拿到所有匹配到的,就需要用到re.findall(),把所有匹配到的以列表形式列出来。这时候 ^ 就有了用武之地。
    >>> s
    search方法和findall方法
    'itcast</h1></html>itheima</h1>'
    >>> re.search(r"\w+</h1>", s)
    <_sre.SRE_Match object; span=(0, 11), match='itcast</h1>'>
    >>> re.findall(r"\w+</h1>", s)
    ['itcast</h1>', 'itheima</h1>']
    
    1. sub是用来替换的,接收三个参数
      在VI中如果要替换用“r”,如果批量替换用“R”
      re.sub(符合规则的部分, 需要替换成的东西,目标被处理的字符串 )
      (会把所有符合规则的全部替换)
      如果只想替换一部分,要另外确定规则。
    • Python中的print函数自动把里面的内容转换成字符串类型
    def replace(result):
        print(result.group())
        r = int(result.group()) + 20
        return str(r)
    import re
    re.sub(r"\d+", replace, "python=100, php=10")
    100
    10
    'python=120, php=30'
    
    • 三个引号表示保留字符串原始格式里面的换行、单引号双引号不需要处理。
      Python中三个引号包含的注释信息也是有意义的,表示在这里定义了一个数据类型,只是没有去用而已,如果三个引号之间的文本内容多达几个G,程序仍然会崩溃,和#不一样,#后面的东西Python完全不去理睬。
      三个单引号,可以理解为注释,但它并不是注释,只是字符串的一种特殊格式。

    相关文章

      网友评论

          本文标题:2018-06-19re的高级用法(1)

          本文链接:https://www.haomeiwen.com/subject/dhwaeftx.html