python18 正则表达式

python18 正则表达式

复制代码
正则表达式 re.match(),re.search(),re.findall(),re.sub(),re.split()
元字符 具有特殊意义的专用字符
导入模块
improt re

代码

复制代码
'''
正则表达式 re.match(),re.search(),re.findall(),re.sub(),re.split()
元字符 具有特殊意义的专用字符
导入模块
improt re
'''
import re

pattern = '\d\.\d+' # +限定符, \d 0-9 数字出现1次或多次
s = 'I study Python 3.11 every day'
# 从字符串的开始位置进行匹配,如果起始位置匹配成功,成功为match对象,否则为None
# re.match(匹配规则,等匹配字符串,re.I 忽略大小写)
match = re.match(pattern,s,re.I)
print(match) #None
s2 = '3.11Python I study every day'
match2 = re.match(pattern,s2,re.I)
print(match2)  #<re.Match object; span=(0, 4), match='3.11'> 找到结果了
# 获取数据
print('匹配值的起始位置:',match2.start())
print('匹配值的结束位置:',match2.end())
print('匹配区间的位置元素:',match2.span())
print('待匹配的字符串:',match2.string)
print('匹配的数据:',match2.group())

# re.search() 用于在整个字符串中搜索第一个匹配的值,如果匹配成功,结果为match对象,否则为None
s3 = 'I study Python3.11 every day Python2.7 I love you'
match3 = re.search(pattern,s3)
print(f'search()=>{match3}')

s4 = '4.10 I study Python3.11 every day Python2.7 I love you'
match4 = re.search(pattern,s4)
print(f'search()=>{match4}')

s5 = 'I study Python every day Python I love you'
match5 = re.search(pattern,s5)
print(f'search()=>{match5}')

# re.findall() 用于在整个字符串搜索所有符合正则表达式的值,结果为一个列表类型
s6 = 'I study Python3.11 every day Python2.7 I love you'
match6 = re.findall(pattern,s6)
print(f'findall()=>{match6}')

# re.sub() 用于实现对字符串中指定子串的替换
pattern = '黑客|破解|反爬'
s7 = '我想学习Python,想破解一些VIP视频,Python可以实现无底线反爬吗?'
newS7 = re.sub(pattern,'xxx',s7)
print(f'sub()替换后:{newS7}')

# re.split() 与字符串的split方法功能相同,都是分隔字符串
pattern2 = '[?l&]'
s8 = 'https://www.baidu.com/s?wd=ysj&rsv_spt=1'
lst = re.split(pattern2,s8)
print(lst)
相关推荐
深圳雨林凯AI4 小时前
图案裂变的“风格归一化“设计思路:主体保得住,画风才拉得齐|雨林凯AI技术笔记
人工智能·笔记
冬木家居5 小时前
40㎡客厅变形记,小家住出大自由[特殊字符]
android·经验分享·笔记·智能家居·微信公众平台
摇滚侠5 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 数据库初始化机制 阅读笔记 36
数据库·spring boot·笔记
推送者8 小时前
用宠物照片制作桌宠:从AI拆帧到九点标定的本地化实现笔记
笔记·宠物·用宠物照片制作桌宠
一条破秋裤8 小时前
16_TIM编码器接口测速
笔记·stm32·学习
tju新生代魔迷8 小时前
Verilog HDL 学习笔记(十)| 第10章 时序和延迟
笔记·学习·fpga开发
血小板要健康10 小时前
链表 阶段算法总结
java·数据结构·笔记·算法·leetcode·链表
浔溺10 小时前
al+大数据每日学习笔记31
大数据·笔记·学习
摇滚侠10 小时前
《SpringBoot 3:入门与应用实战》第 9 章 跨域问题 阅读笔记 27
spring boot·笔记·okhttp
山岚的运维笔记10 小时前
mysql 专业笔记 -- 第 8 章:使用变量
运维·数据库·笔记·后端·学习·mysql·dba