re模块

import re

'''
re常用的几种用法
match 从头匹配
findall 查找所有
search 查找第一个匹配项
split 按规则拆分成列表
sub 查找并替换
'''

#编译正则,提高运行速率
rule = re.compile("[0-9]+")

#^匹配字符串开头和\A效果一样,+匹配一个或多个
result = re.match("[0-9]+", "788absdfsd123vfg456sdf!")     #匹配788
print(result.group())

#$匹配字符串结尾 \W匹配非数字字母下划线
result = re.search("[a-z]+\W$", "788absdfsd123vfg456sdf!")   #匹配sdf!
print(result.group())

#查找字符串内所有的匹配项 \d匹配数字效果同[0-9]
result = re.findall("\d+", "788absdfsd123vfg456sdf!") #['788', '123', '456']
print(result)

#把字符串按规则拆分成列表
result = re.split("[0-9]+", "788absdfsd123vfg456sdf!")   #['', 'absdfsd', 'vfg', 'sdf!']
print(result)

#把指定字符串按正则匹配项替换成指定字符,可以指定次数
result = re.sub("[a-z]+", "|", "788absdfsd123vfg456sdf!", count=2)  #788|123|456sdf!
print(result)

#?匹配0个或1个前面的表达式的片段,非贪婪方式,匹配's' 0个或者1个
result = re.search("as?", "sdf124dfsdfaa")    #可以匹配'a'或'as' 没有'as'所以匹配a
print(result.group())

  

posted @ 2018-04-24 08:36  与君同悦  阅读(120)  评论(0)    收藏  举报