ITPub博客

首页 > 大数据 > 可视化 > python基础操作——正则表达式

python基础操作——正则表达式

原创 可视化 作者:新梦想IT 时间:2023-04-10 15:17:44 0 删除 编辑



一、匹配单个字


表达式

含义

\d

匹配一个数字,等价于0-9之间的任意一个数字,通过[数字]/[起始数字-结尾数字]可以具体指定匹配数字的范围

\w

匹配单词字符,即a-z、A-Z、0-9、_

\W

大写W匹配非单词字符

.

匹配任意1个字符(除了\n)

[]

匹配[]中列举的字符

\D

匹配非数字,即不是数字

\s

匹配空白,即空白,tab键

\S

匹配非空白


[0123456789]    == [0-9]


[123678]    ==     [1-36-8]


字母同样的逻辑处理:[a-z],表示匹配a到z之间的任意一个字母




二、匹配多个字符


通过{数字}来限制需要匹配的特定内容出现的次数,例如match(r'数字\d{2}', '数字123'),表示匹配“数字”后面有两个数字的字符串,如果超

出指定的范围,取到范围处为止,如果不够指定范围长度,则报错


match(r'内容\d{1,2}','内容12'),表示匹配'内容后面有一个或两个数字的字符串',如果超出指定的范围,则按最大范围取匹配内容


*   匹配前一个字符出现0次或者无限次,即可有可无


+   匹配前一个字符出现1次或者无限次,即至少有1次


?   匹配前一个字符出现1次或者0次,即要么有1次,要么没有


{m}  匹配前一个字符出现m次


{m,n} 匹配前一个字符出现从m次到n次




三、匹配开头结尾


开头:^


结尾:$




四、匹配分组


|   匹配左右任意一个表达式


(ab)    将括号中字符作为一个分组


\num    引用分组num匹配到的字符串


(?P<name>)  分组起别名


(?P=name)   引用别名为name分组匹配到的字符串




五、re模块高 级用法


search:搜索和查询内容相匹配的数据值


re.search(r'\d+', '阅读量 999').group()    会返回999


findall:返回所有和查询内容相匹配的数据值,返回列表


re.findall(r'\d+', 'python=999,c=7890')     会返回[999, 7890]


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


re.sub(r'正则匹配规则', '新内容', '数据')  运行原理,会优先进行正则匹配,如果有匹配上的内容就将其替换为新内容


split:根据匹配进行切割字符串,返回一个列表


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69940641/viewspace-2944748/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
新梦想IT职业教育(新梦想软件测试),是长沙一家专注于IT教育培训的机构。分享干货不容易,如果想了解更多的软件测试精彩干货,请留言交流,感谢阅读!

注册时间:2019-07-11

  • 博文量
    237
  • 访问量
    140175