您的位置:首页 > 编程语言 > Python开发

Python最常用的正则表达式

2016-07-25 19:47 302 查看
正则表达式常用符号

 符号

 含义

 例子

匹配结果 

 *

 匹配前面的字符、子表达式或者括号里的字符0次或多次

 a*b*

 aaaaaaaa,aaaaaabbbbb,bbbbbbbb

 +

 匹配前面的字符,子表达式或者括号里的字符至少1次

 a+b+

 aaaaaab,aaabbbbb,abbbbbbb

 [ ]

 匹配任意一个字符(相当于任选一个)

 [A-Z]*

APPLE,CAPITALS,QWERTY 

 ( )

表达式编组(在正则表达式的规范里编组会优先运行) 

 (a*b)*

aaaaab,abaaab,ababaaaaaab 

 {m,n}

匹配前面的字符,子表达式或者括号里的字符m到n次(包含m或n) 

 a{2,3}b{2,3}

 aabbb,aaabbb,aabb

 [^]

 匹配任意一个不在中括号里的字符

 [^A-Z]*

 apple,lowercase,qwerty

 |

 匹配任意一个由竖线分割的字符,子表达式(注意是竖线,不是大写字母I)

 b(a|i|e)d

 bad,bid,bed

 .

 匹配任意单个字符(包括符号,数字,空格等)

 b.d

 bad,bzd,b$d,b d

 ^

 指字符串开始位置的字符或子表达式

 ^a

 apple,asdf,a

 \

 转义字符(把含有特殊意义的字符转换成字面形式)

 \.\|\\

 .|\

 $

 经常用在正则表达式的末尾,表示“从字符串的末端匹配”。如果不用它,每个

正则表达式实际都带着“.*”模式,只会从字符串开头进行匹配,这个符号可以

看成是^符号的反义词

 [A-Z]*[a-z]*$

 ABCabc,zzzyx,Bob

 ?!

 "不包含"。这个奇怪的组合通常放在字符串或者正则表达式前面,表示字符

不能出现在目标字符串里。这个符号就比较难用,字符通常会在字符串的不同

部位出现,如果要在整个字符串中全部排除某个字符就加上^和&符号。

^((?![A-Z]).)*$

 no-caps-here,$ymb01s,a4e f!ne


以下的图片来自于

AstralWind的博客,地址为

Python正则表达式指南
- AstralWind - 博客园  http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html


点击打开链接




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: