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

2018-06-20  本文已影响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(符合规则的部分, 需要替换成的东西,目标被处理的字符串 )
    (会把所有符合规则的全部替换)
    如果只想替换一部分,要另外确定规则。
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'
上一篇 下一篇

猜你喜欢

热点阅读