【自学记录】【23.11.02】正则表达式

1、正则表达式

复制代码
分普通字符和特殊字符

#匹配str1="['https://img-blog.csdnimg.cn/af82c09f338d46f3bea2855f1ef14a79.webp']"
#至str2="https://img-blog.csdnimg.cn/af82c09f338d46f3bea2855f1ef14a79.webp"
url=re.compile(r'\[\'(.*?)\'\]').findall(url)

特殊字符------元字符
. 表示匹配除了 换行符 之外的任何 单个 字符
    re.DOTALL 点也匹配换行符

* 表示匹配前面的子表达式任意次,包括0次
    .* 表示任意字符 包括0字符

+ 表示前面的子表达式一次或多次,不包括0次
    .+ 表示任意字符 不包括0字符

{} 表示匹配固定次数
    a{3,4} 匹配a至少三次,至多四次
    \d{11}可以把所有11位电话号提取出来
    a{0,1} 还可以表示a出现了0次或1次
? 也表示0次或1次 a?
  也表示贪婪模式 转 非贪婪模式:加问号 re.compile(r'<.*?>')

对元字符的转义 用反斜杠\
    .*\. 找出原文.之前加上.的内容
匹配某种字符类型  
    \d 匹配0-9之间任意一个数字字符 等价于表达式[0-9]
    \D 非0-9 [^0-9]
    \s 任意一个空白字符 空格、tab、换行
    \S ^\s 
    \w 任意文字字符 大小写字母、数字、下划线 [a-z A-Z 0-9]
        常用于检测用户名是否有效
    \W ^\w     

[] 方括号 表示 范围
    1[1-10]\d{10} 第二个字符在1-10范围内的有效电话号码
    [\s,.] 表示匹配任意空白字符 或者 , 或者 .
    [.] 方括号里的字符表示字符本身,比如 . 不再表示任意字符
    [^ ] 加^ 表示非[]里的集合

-起始位置 和 单行、多行模式
p = re.compile(r'^\d+', re.M)
re.M 多行模式
re.S 单行模式
re.DOTALL 点也匹配换行符

^表示匹配文本的起始位置 
    单行模式 '^/d+' 表示第一行起始的数字
    多行模式 加上 re.M
$ 表示结尾位置 跟^类似 /d+$    

字符串替换
    newStr = re.sub(r'/av\d+/', '/cn345677/' , names)
-括号 分组

(.+), 只提取括号里的部分
(.+)(,) 返回两组

2、re库

复制代码
#1、re.compile()将正则表达式编译成一个pattern对象
 #return pattern
pattern=re.compile(r'.色')
#2、pattern提供一系列的方法,来对文本进行匹配,一般返回一个match对象
 #return match
pattern.match(names)
pattern.search(names)
#也有返回list的
#return list
pattern.findall(names)
相关推荐
编程有点难8 分钟前
Python训练打卡Day43
开发语言·python·深度学习
2301_8050545615 分钟前
Python训练营打卡Day48(2025.6.8)
pytorch·python·深度学习
LjQ204023 分钟前
网络爬虫一课一得
开发语言·数据库·python·网络爬虫
哆啦A梦的口袋呀41 分钟前
基于Python学习《Head First设计模式》第九章 迭代器和组合模式
python·学习·设计模式
sponge'1 小时前
opencv学习笔记2:卷积、均值滤波、中值滤波
笔记·python·opencv·学习
databook2 小时前
概率图模型:机器学习的结构化概率之道
python·机器学习·scikit-learn
拾回程序猿的圈圈∞2 小时前
实战二:开发网页端界面完成黑白视频转为彩色视频
python·ai编程
亚林瓜子2 小时前
AWS Elastic Beanstalk + CodePipeline(Python Flask Web的国区CI/CD)
python·ci/cd·flask·web·aws·beanstalk·codepipeline
春末的南方城市2 小时前
中山大学&美团&港科大提出首个音频驱动多人对话视频生成MultiTalk,输入一个音频和提示,即可生成对应唇部、音频交互视频。
人工智能·python·深度学习·计算机视觉·transformer
深科文库3 小时前
构建 MCP 服务器:第 4 部分 — 创建工具
python·chatgpt·prompt·aigc·agi·ai-native