正则表达式

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*oow*')#吧匹配规则包装成一个对象调用这个对象完成匹配
print(regex.findall(tex))#查找所有包含’oo的单词
import re
#正则分组就是去已经提取到的数据中在去提取数据。
#origin="hasaabc kljlkjhlk hlaabc kj"
#r=re.match("hw+",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)
原文地址:https://www.cnblogs.com/zang963469010/p/5959923.html