用最简单的方式理解正则3

我们继续前面的内容
示例3:*强调内容*
需求:匹配出<hl>qwe</hl
可以用其他方式匹配出来,但是这个方法前后<>里不同也是可以的

import re
 citing = re.match("<[a-zA-Z]*>\w*</[a-zA-Z]*>", "<hl>qwe</hl>").group() 
 print(citing)
输出:<hl>qwe</hl>内容

所以我们来试试加 \ 的方法

import re
citing = re.match(r"<([a-zA-Z]*)>\w*</\1>", "<hl>qwe</hl>").group()
print(citing)
输出:<hl>qwe</hl>内容
import re
citing = re.match(r"<([a-zA-Z]*)>\w*</\1>", "<hl>qwe</hlfasfda>").group()
print(citing)

就会出现的错误:
Traceback (most recent call last):
  File "E:/chen/课件/re_正则1.py", line 57, in <module>
    citing = re.match(r"<([a-zA-Z]*)>\w*</\1>", "<hl>qwe</hlfasfda>").group()
AttributeError: 'NoneType' object has no attribute 'group'

Process finished with exit code 1

示例4:\number

import re
citing = re.match(r"<(\w*)><(\w*)>.*</\2></\1>", "<html><a>www.baidu.com</a></html>").group()
print(citing)

输出:<html><a>www.baidu.com</a></html>

示例5:(?P<name>) (?P=name)

import re
citing = re.match(r"<(?P<name1>\w*)><(?P<name2>\w*)>.*</(?P=name2)></(?P=name1)>", "<html><h1>www.baidu.com</h1></html>").group()
print(citing)

输出:<html><h1>www.baidu.com</h1></html>

import re
citing=re.search(r”\d+”, “阅读次数为 564”).group()
print(citing)
输出:456

findall

统计出a,b,c出现的数字

import re
citing=re.findall(r"\d+", "a = 2121, b = 3369 c = 61564")
print(citing)
['2121', '3369', '61564']



sub 将匹配到的数据进行替换

import re
citing=re.sub(r"\d+", '5', "xiaoming = 457")
print(citing)
xiaoming = 5
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值