python学习——re库的常用函数

参考资料:python网络爬虫技术与应用【邓维】

1、match()

从字符串头部开始匹配字符。

python 复制代码
import re
content="The123456ismyonephonenumber."
# 字符串长度
print(len(content)) 
# 使用match匹配,第一个参数为正则表达式,第二个参数为要匹配的字符串
result=re.match(r'^The',content)
print(result)
# 输出匹配内容
print(result.group())
# 输出匹配内容的位置索引
print(result.span())

2、search()

与match()方法不同,search()方法不需要从头开始匹配。

python 复制代码
import re
content="OtherThe123456ismyonephonenumber."
result=re.search(r"The.*?(\d+).*?number.",content)
print(result.group())

3、findall()

match()方法和search()方法都是返回匹配到的第一个内容就结束匹配,而findall()方法是返回全部符合匹配规则的内容,返回的是一个列表。

python 复制代码
import re
text="pyypppyyyyypppp"
pattern="py"
for match in re.findall(pattern,text):
    print("Found{!r}".format(match))

4、sub()

去除或替换匹配的字符。假如写sub("\d+","-"),则是把匹配的内容调换成"-",例子如下:

python 复制代码
import re
content='54abc59de335f7778888g'
content=re.sub("\d+","",content)
print(content)
相关推荐
吃好睡好便好44 分钟前
用while循环语句求和
开发语言·学习·算法·matlab·信息可视化
TechWayfarer1 小时前
查询IP所在地的3种方案:从API到离线库,风控场景怎么选?
开发语言·网络·python·网络协议·tcp/ip
程序员榴莲1 小时前
Python 单例模式
开发语言·python·单例模式
hh.h.2 小时前
昇腾CANN ops-transformer 仓的 MC2 算子:MoE 模型的全到全通信
python·深度学习·transformer·cann
ゆづき2 小时前
计算机数据存储全解:从底层进制转换到存储介质演进
笔记·学习·生活
小+不通文墨2 小时前
树莓派玩转EMQX的常用指令清单
经验分享·笔记·学习
NiceCloud喜云3 小时前
Claude Files API 深入:从上传、复用到配额管理的工程化指南
android·java·数据库·人工智能·python·json·飞书
kdxiaojie3 小时前
U-Boot分析【学习笔记】(12)
linux·笔记·学习
专注VB编程开发20年3 小时前
windows下python自带标准库 ≈ 70% 纯.py 源码,30% .pyd(DLL)
python