1 import re
2
3 print('------*的使用--------')
4 pattern='d*' # 0次或多次
5 s = '123abc'
6 # <re.Match object; span=(0, 3), match='123'>
7 s = 'abc' #这时候不是 None 而是'',因为 abc 前面默认有空
8 # <re.Match object; span=(0, 0), match=''>
9 v = re.match(pattern,s)
10 print(v)
11
12 print('-----+的使用---------')
13 pattern='d+' # 1次或多次
14 s = '123abc'
15 # <re.Match object; span=(0, 3), match='123'>
16 s = 'abc' # 这时候是 None
17 v = re.match(pattern,s)
18 print(v)
19
20 print('-----?的使用---------')
21 pattern='d?' # 0次或 1次
22 s = '123abc'
23 # <re.Match object; span=(0, 1), match='1'>
24 s = 'abc'
25 # <re.Match object; span=(0, 0), match=''>
26 v = re.match(pattern,s)
27 print(v)
28
29 print('-----{m}的使用---------')
30 pattern='d{3}' # 出现 3 次
31 # <re.Match object; span=(0, 3), match='123'>
32 pattern='d{2}' # 出现 2 次
33 # <re.Match object; span=(0, 2), match='12'>
34 pattern='d{4}' # None
35 s = '123abc'
36 v = re.match(pattern,s)
37 print(v)
38
39 print('-----{m,}的使用---------')
40 pattern='d{3,}' # 出现大于 m 次 尽可能满足的都返回
41 # <re.Match object; span=(0, 7), match='1234567'>
42 pattern='d{2,4}' #出现 m 到 n 次
43 # <re.Match object; span=(0, 4), match='1234'>
44 s='1234567abc'
45 v=re.match(pattern,s)
46 print(v)
47
48 print('-----{m,n}的使用----------')
49 pattern = 'd{2,5}'
50 s = '123456abc'
51 # <re.Match object; span=(0, 5), match='12345'>
52 s = 'abc' # None
53 v = re.match(pattern,s)
54 print(v)