import re """ re.findall(正则表达式, 字符串) 在字符串找到所有符合正则表达式的字符
结果:
['a', 'a', 'a'] """ ret = re.findall('a', 'abc_abc_abc') print(ret)
import re """ re.search(正则表达式, 字符串) 在字符串中找出第一个符合正则表达式的字符 如果没找到,返回None 结果: a """ ret = re.search('a', 'bca_acb') if ret: print(ret.group())
import re """ 字符串开头,匹配正则表达式 结果 a """ ret = re.match('a', 'abc') if ret: print(ret.group())
import re """ re.split()用法与str的split相似 区别:str: 字符; re: 正则表达 结果: ['abc', 'abc3a'] """ ret = re.split(r'd', 'abc1abc3a', 1) print(ret)
import re """ re.sub()与str的replace()相似 区别:re 正则表达式 str 字符串 结果: bbacccaaa """ ret = re.sub('a', 'b', 'aaacccaaa', 2) print(ret)
import re """ re.subn()获取替换的次数, 结果: ('bbacccaaa', 2) """ ret = re.subn('a', 'b', 'aaacccaaa', 2) print(ret)
import re """ re.compile() 把正则表达式编译成一个对象 结果: ['a', 'a'] """ obj = re.compile('a') ret = re.findall(obj, 'cba_nba') print(ret)
import re """ g为迭代器 结果: 2 ['1', '4', '6'] """ g = re.finditer(r'd', '21daf4asf6fa ') print(next(g).group()) print([i.group() for i in g])
finall() 有分组的优先级
www.(?:bing|baidu)com
结果:www.bing.com
split('(d+)')
结果:保留被切割的数字