美文网首页
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