正则表达式

正则表达式:

import re

s1 = 'python ui web 张三'

print(s1.find('web'))

print(re.search('web',s1)) #正则提供的精准查找

print(re.findall('web',s1)) #正则提供的模糊查找

​

t = '\d+'

print(re.findall(t,s1)) #通过正则查找字符串里的数字

​

#:t通配符:万能符,可以匹配\n以外的所有符号

s1 = 'tom 200 bom 308 do\nm 400 5e'

res1 = re.findall('0-9+',s1)

res2 = re.findall('0-9{1,}',s1)

res3 = re.findall('\d+',s1)

res4 = re.findall('\\d+',s1)

res5 = re.findall(r'\d+',s1)

res6 = re.findall(r'd|b+',s1)

res7 = re.findall(r'tbdom',s1)

res8 = re.findall(r'\n',s1)

res9 = re.findall(r'0-9a-zA-Z',s1)

print(res1)

print(res2)

print(res3)

print(res4)

print(res5)

print(res6)

print(res7)

print(res8)

print(res9)

​

s1 = 'aeeee age agree ape are a\ne ape a9e aFe'

reg = 'a.e'

res = re.findall(reg,s1)

res1 = re.findall('a.e',s1)

print(res1)

​

#2\[\]:表示字符串只能匹配一个

s2 = 'aeeee age agree ape are a\ne ape a9e aFe'

res1 = re.findall('ape',s1)

res2 = re.findall('apge',s1)

res3 = re.findall('a0-9e',s1)

res4 = re.findall('aa-ze',s1)

res5 = re.findall('aA-Ze',s1)

res6 = re.findall('aa-zA-Ze',s1)

res7 = re.findall('a\^0-9e',s1)

res8 = re.findall('a\^a-ze',s1)

print(res1)

print(res2)

print(res3)

print(res4)

print(res5)

print(res6)

print(res7)

print(res8)

​

#{}制定左侧可以重复的范围

s3 = 'aeeee age agree ape are a\ne ape a9e aFe'

res1 = re.findall('a...e',s3)

res2 = re.findall('a{3}e',s3)

#贪婪匹配规则,默认按照最大数量匹配

res6 = re.findall('a.{1,3}e',s3)

#取消贪婪匹配规则,在{}加?

res7 = re.findall('a.{1,3}?',s3)

#如果第二个值不写,默认无穷大

res8 = re.findall('a.{1,}',s3)

#更换匹配模式,匹配所有

res9 = re.findall('a.{1,}e',s3,re.S)

print(res6)

print(res7)

print(res8)

print(res9)

​

#?:制定左侧符号出现0次或1次,等同于{0,1},默认贪婪

s4 = 'aeeee age agree ape are a\ne ape a9e aFe'

res10 = re.findall('a.{0,1}?e',s4)

res11 = re.findall('a.??e',s4)

print(res10)

print(res11)

​

#*:制定左侧符号出现0次或多次,等同于{0,},默认贪婪

s4 = 'aeeee age agree ape are a\ne ape a9e aFe'

res10 = re.findall('a.{0,}?e',s4)

res11 = re.findall('a.*?e',s4)

print(res10)

print(res11)

​

#+:制定左侧符号出现1次或多次,等同于{1,},默认贪婪

s4 = 'aeeee age agree ape are a\ne ape a9e aFe'

res13 = re.findall('a.+?e',s4)

res12 = re.findall('0-9+?',s4)

print(res12)

print(res13)

​

s7 = '122223333', '13432416666','11011112222'

def test():

for i in num:

rees = re.findall(r'^13-9\d{9}$',n)

print(res)

test()

^与$

$以某个规则结尾

^以某个规则开头

s5 = '王哥王弟王嫂'

res12 = re.findall('王',s5)

res13 = re.findall('^王.',s5)

res14 = re.findall('王.$',s5)

相关推荐
zzZ··*7 分钟前
CodeBuddy 用量看板:本地解析 Token 与积分消耗,不联网不上传
python·vue·ai编程
朝朝辞暮i14 分钟前
C++ 第 10 课:函数 Function
开发语言·c++
小猴子爱上树14 分钟前
跨马翻译:批量图片翻译+视频字幕+智能抠图一站式工具
python·音视频
朝朝辞暮i28 分钟前
C++ 第7课 while 循环
开发语言·c++·算法
小朱爱编程12331 分钟前
我用 Jev 做了三个实用工具:整理标签页、分诊飞书反馈、找回 GitHub 收藏
java·开发语言·人工智能·后端·python·架构·ai编程
谢亮_vipxieliang1 小时前
Java 8/11/17/21/25 怎么选?一篇讲清 LTS 升级路线
java·开发语言
Cindy_cd1 小时前
IDEA2021 配置 JDK+Maven
java·开发语言·maven
TomEval1 小时前
【测AI】第06篇:数据清洗实战 —— Pandas 处理爬取的 JD 数据
人工智能·python·自动化·aigc·pandas
全栈练习生1 小时前
大模型反向传播与梯度下降
python·ai
小小张说故事2 小时前
Python logging 日志不输出?根源在 propagate 这条链上
后端·python