欢迎使用CSDN-markdown编辑器
来源:互联网 发布:mac下载fs2you 编辑:程序博客网 时间:2024/05/20 04:11
python学习
正则表达式(RE)可以匹配相应字符串集指定规则,
正则表达式模式被编译成一系列的字解码,然后由用c编写的匹配引擎执行。
正则表达式语言相对小型和功能有限:
不是所有字符串处理都能使用正则表达式完成。
字符匹配
- 普通字符
- 大多数字母和字符一般会和自身匹配
- 正则表达式test和字符串“test”完全匹配
- 元字符
- . ^∗+?[] |()−[]−常用来指定一个字符集:【abc】;[a−z]−元字符在字符集中不起作用:[akm ]
- 补集匹配不在区间范围内的字符:[^5]
- 举例说明:
import re 是引入re这个模块
定义正则表达式就是定义一个字符串
s=r ‘abc’ 定义正则表达式就是abc三个字母
想从给定的字符串中查找数据:比如s是给定的字符串:re.findall(s,”aaaaa”)返回的是【】空字符串;re.findall(s,”abcaaaa”)返回的是[‘abc’];re.findall(s,”abcaaaabc”)匹配到[‘abc’,’abc’]
有时,规则会有些变化:比如一个字符串st=”top tip tqp twp tep” , res=r“top”它相当于给出的正则 ,
re.findall(res,st)针对res这个规则,看st中是否有符合的,返回结果是[‘top’]
res = r “t[io]p” 这样 re.findall(res.st) 返回的是[‘top’,’tip’]
res = r “t[^io]p”除了tip和top之外的,re.findall(res,st)返回的是[‘tqp’,’twp’,’tep’]
- ^ 匹配行首。除非设置MULTILINE标志,它只是匹配字符串的开始。在MULTILINE模式里,它也可以直接匹配字符串的每个换行。
使用:s=”hello world,hello boy”指定一个字符串;制定一个正则表达式,r=r”hello”;re.findall(r,s)返回的是[‘hello’,’hello’]
r=r”^hello”,re.findall(r,s)返回的是[‘hello’]; s = “world,hello boy”,再进行正则匹配,则re.findall(r,s) , 因为s字符串的行首不是hello,所以返回的结果是re.findall(r,s) 返回结果是[]空字符串。
-匹配行尾,行尾被定义为要么是字符串尾,要么是一个换行字符后面的任何位置。−s=“world,helloboy”,r=r“boy ” , re.findall(r,s)结果返回的是[‘boy’]
- 方括号里出现元字符,元字符不起作用,r= “t[abc]",re.findall(r,′ta′)返回[′ta′],re.findall(r,′t ’)返回的是[‘t$’] ; r=”t[abc^]”,re.findall(r,’t^’)返回的是[‘t^’]
- r=r”x[0-9]x”,这样再进行正则匹配,re.findall(r,’x1x,x2x’)返回[‘x1x’,’x2x’]
- r=r”x[a-zA-Z0-9]x”这个范围包括大小写字母包括数字的集合。
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- ubuntu usb接口在开机后全部失效,只有重启才能恢复的解决办法
- Node.js Express连接mysql完整的登陆注册系统(windows)
- css加载字体的跨域问题
- Logistic回归建模
- 2.符号的技巧
- 欢迎使用CSDN-markdown编辑器
- tsc - error TS2304 Cannot find name 'Set'/'Promise'
- 解除搜狗引击不收录网站的问题分享
- 数据结构数组的应用--求鞍点
- LeetCode7.Reverse Integer
- 随着百度算法不断调整跟变革对SEO行业的影响
- sum(sum(abs(y))) 中 sum(sum())什么意思?
- RBAC新解:基于资源的权限管理(Resource-Based Access Control)
- 谈谈短视频营销的功效跟手法