re模块中除了常用的两个函数re.match()re.search()外, 还有一些其他经常用到的函数.

拆分字符串:re.split(pattern, string)

根据指定的模式去切割字符串, 返回的是是一个列表, 包含了切割到的所有字符串.

import re

s = "10.20.3.220"
r = re.split("\.", s)
print(r)


替换字符串1:re.sub(pattern, repl, string)

repl去替换满足模式的子字符串.

返回值就是替换后的新的字符串.

import re

s = "abc1234flll67a89"
r = re.sub("\d+", "X", s)
print(r)


替换字符串2:re.subn(pattern, repl, string)

re.sub()是一样的, 但是返回值是一个元组, 包含新字符串和替换的次数.

import re

s = "abc1234flll67a89"
r = re.subn("\d+", "X", s)
print(r)


找到所有匹配1: re.findall(pattern, string)

在字符串找到所有的匹配子字符串.

如果有分组, 则返回与分组匹配的字符串.

如果使用了不止一个分组, 返回的列表中, 每一项都是一个元组

import re

s = "abc1234fa67a89"
r = re.findall("\d+[a-z]+", s)
print(r)
r = re.findall("(\d+)[a-z]+", s)
print(r)
r = re.findall("(\d+)([a-z]+)", s)
print(r)


找到所有的匹配2: re.finditer(pattern, string)

re.findall是一样的, 只是re.finditer()返回的是一个迭代器.

Copyright © 李振超 2018 all right reserved,powered by Gitbook
该文件最后修订时间: 2018-02-25 07:12:09

results matching ""

    No results matching ""