Python 正则表达式
来源:互联网 发布:2017 淘宝 我的空间 编辑:程序博客网 时间:2024/06/05 20:44
正则表达式 也就是Python的re模块。(并不是所有的字符串处理都可以用正则表达式处理)
正则表达式元字符如下:
正则表达式元字符如下:
在使用正则的时候 首先要import re
正则规范为 s = r‘ab’(意思为定义一个 名称为s的 规则为ab的正则)
re.findall(s,'ababbababa')代表在字符串‘ababababab’中的所有包含ab的选项。
. 它匹配除了换行字符外的任何字符,在 alternate 模式(re.DOTALL)下它甚至可以匹配换行
r = r‘.’
re.findall(r,'abcdefg123455[]')
结果为 ab c d e f g 1 2 3 4 5 5 [ ] 表示匹配任何字符
^ 匹配行首。除非设置 MULTILINE 标志,它只是匹配字符串的开始。
r = r'^ab'
re.findall(r,'abcd') 返回值为‘ab’
re.findall(r.'cabd')返回值为空
只匹配行首为正则的表达式
只匹配行首为正则的表达式
$ 匹配行尾,行尾被定义为要么是字符串尾,要么是一个换行字符后面的任何位置。
同^ 只是匹配的只是行尾
* 重复0或N次
r = r'a*b'
re.findall(r,'aaaaaab,aaab,ab,aaaab,b')
结果为aaaaaab aaab ab aaaab b
+ 重复1或N次
同* 只是单独的一个b不匹配
? 重复0或1次
与上面2个类似 但只匹配0个或者1个出现的字符
{} 该限定符的意思是至少有 m 个重复,至多到 n 个重复
r = r'1{2,4}2'
re.findall(r,'12,1112,112,11112,2')
结果为 1112 112 11112
[] 它们常用来指定一个字符类别,所谓字符类别就是你想匹配的一个字符集(在[]中出现的元字符按正常字符计算)
r = r'a[bcd]g'
re.findall(r,'aag ,abg,acg,adg,afg')
结果为 abg acg adg
\ 反斜杠后面可以加不同的字符以表示不同特殊意义。它也可以用于取消所有的元字符,这样你就可以在模式中匹配它们了
例如若想匹配^a字符 则在正则里需要使用\
r1=r'^a'表示以a为开头的字符
r=r'\^a' 表示查找与^a匹配的字符
re.findall(r,'b^a^b^a')
以r1为正则 结果为0,以r为正则 结果为^a ^a
| 可选项,或者 "or" 操作符。
() 组
http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html
http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html
0 0
- python正则表达式学习
- c++正则表达式,python
- Python正则表达式(一)
- python的正则表达式
- Python正则表达式
- Python初学-正则表达式
- 正则表达式与python
- python正则表达式学习
- python正则表达式学习
- python正则表达式学习
- python正则表达式
- Python - 正则表达式
- Python正则表达式
- python正则表达式
- Python正则表达式指南
- Python正则表达式指南
- Python 正则表达式指南
- python 正则表达式
- 计算机名词
- iOS linker command failed with exit code 1 (use -v to see invocation)
- [转载][笔记]MySQL 配置优化
- 代理之匿名函数
- Android 利用 APT 技术在编译期生成代码
- Python 正则表达式
- robots.txt写法大全
- oclint规则 Unused(无用)
- CMakeCache.txt is different 错误
- JAVA001对象导论06
- ld: library not found for -lAFNetworking
- c++深拷贝和浅拷贝
- 深度学习:LeNet-5学习
- 代码混淆与反编译