[abc]: 匹配a、b或者c
[a-z]: 匹配任何一个小写字母
\[: 匹配 [
\d: 匹配任何十进制数; 这相当于 [0-9]。
\D: 匹配任何非数字字符; 这相当于 [^0-9]
\s: 匹配任何空格字符; 这相当于 [ \t\n\r\f\v]
\S: 匹配任何非空格字符; 这相当于 [^ \t\n\r\f\v]
\w: 匹配任何字母数字字符; 这相当于 [a-zA-Z0-9_]。
\W 匹配任何非字母数字字符; 这相当于 [^a-zA-Z0-9_]。
重复字符
*: 指定前一个字符可以匹配零次或更多次
+: 至少需要一次
?: 匹配一次或零次
(): 提取匹配的字符串。
{m,n}: 至少m个,至多n个
简单测试:
import re
p = re.compile('abc+')
s1 = 'a'
s2 = 'abbb'
s3 = 'abca'
s4 = 'abcd'
if p.match(s1):
print 'yes',' ',s1
if p.match(s2):
print 'yes',' ',s2
if p.match(s3):
print 'yes',' ',s3
if p.match(s4):
print 'yes',' ',s4
结果:
yes abca
yes abcd