正则表达式
import re h=re.match('com','comwww.runcomoob').group()#使用match返回的是一个对象,使用aroup来拿到结果 print(h) #finditer()与findall唯一的区别就是前者拿到的是一个对象后者直接返回结果的列表 # match只匹配起始位置如果有拿到结果没有就匹配不到 # 这个对象拥有以下方法 # group()返回re匹配到的字符串 # start()返回匹配开始的位置 # end()返回匹配结束的位置 # span()返回一个元组包含匹配(开始,结束) # group()返回re整体匹配的字符串,可以一次输入多个组号,对应组号匹配的字符串 m=re.search('com','comwww.runcomcoob').group() print(m) a=re.sub('g.t','have',"get A, I got B ,I gut C ",2)#找到并替换意思是找到字符串中所有的g..t把他替换成have,最后的2是最大替换次数 print(a) b=re.subn('g.t','have',"get A, I got B ,I gut C ",2)#需要三个参数找到g.t这是被替换的,第二个参数是要替换成的字符串第三个参数是替换次数与sub的区别是这个连替换次数一并返回 print(b) c=re.split('\d+','one1two2three3four4')#字符串分割 print(c) tex='JGood is a handsome boy,he is cool, clever,and so on...' regex=re.compile(r'\w*oo\w*')#吧匹配规则包装成一个对象调用这个对象完成匹配 print(regex.findall(tex))#查找所有包含’oo的单词
import re
#正则分组就是去已经提取到的数据中在去提取数据。
#origin="hasaabc kljlkjhlk hlaabc kj"
#r=re.match("h\w+",origin)#match从开头来找开头找不到就算没有
#r=re.match("h(\w+)",origin)
#r=re.match("h(?P<name>\w+)",origin)
#print(r.group())#获取匹配到的所有结果
#print(r.groups())#获取匹配分组结果
#print(r.groupdict())#获取匹配分组结果按键值对。
#y=re.findall("h(\w+)a(ab)c",origin)
#print(y)
#sub替换匹配成功的字符串
#split分割匹配字符串
#正则分组就是去已经提取到的数据中再去提取数据
分组:
origin="hhhhhw alex khkh alex ajhklh alex jhjj"
r=re.split("alex",origin,1)#分割的有分组和无分组是不一样的,
print(r)