re模块(正则表达式)

 1 import re
 2 
 3 print(re.findall('s...t','rhjioestastgih')) #一个.代表匹配一个字符
 4 
 5 # *  匹配0次到无穷次   (0,+00)表示的不是至少匹配0个,而是*前面的一个字符可以不匹配
 6 # 例子   #['sk']
 7 print(re.findall('skt*','skeriuhgioerg'))
 8 
 9 # +  匹配1次到无穷次   (1,+00)表示的不是至少匹配1个,而是+前面的所有字符都要匹配
10 # 例子   #[]
11 print(re.findall('skt+','skeriuhgioerg'))
12 
13 print(re.findall('stc*','uwhdefoistttttt'))     #['st']
14 print(re.findall('stc+','uwhdefoistttttt'))   #[]
15 
16 print(re.findall('st{0,1}','eriufhstfkjh'))
17 print(re.findall('stc*','uwhdefoistttttt'))     #['st']
18 print(re.findall('stc+','uwhdefoistttttt'))   #[]
19 
20 ret=re.findall('abc?','abccc')#[0,1]
21 print(ret)#['abc']
22 
23 print(re.findall('stt*?','stttttttttt'))    #懒惰匹配 ['st']
24 print(re.findall('stt+?','stttttttttt'))    #懒惰匹配 ['stt']
25 
26 print(re.findall('skt?','iuhskuirh'))   #?[0,1]前面一个可以不匹配,有匹配的只匹配一个      #['sk']
27 print(re.findall('skt?','iuhsktttuirh'))    #['skt']
28 
29 
30 ret=re.findall('abc{1,4}','abccccccc')  #{x,y}最后一位最少可以匹配x次,最多可以匹配y次
31 print(ret)#['abccc'] 贪婪匹配
32 
33 print(re.findall('[0-9]','qq5ds5sg1r56ee2g'))       #[0-9]表示到0123456789的数字都可以,或的意思
34 print(re.findall('[0-9]*','qq55g876h5'))
35 print(re.findall('[a-z]','qqa'))
36 print(re.findall('[A-Z]*','qqSOIGNIOSDF'))
37 print(re.findall('[^A-Z]*','qqS1O23IGNIOSDF'))      #[^]表示非   取反  不包含
38 
39 ## 元字符之转义符\
40 ## 反斜杠后边跟元字符去除特殊功能,比如\.
41 ## 反斜杠后边跟普通字符实现特殊功能,比如\d
42 ## 
43 ## \d  匹配任何十进制数;它相当于类 [0-9]。
44 ## \D 匹配任何非数字字符;它相当于类 [^0-9]。
45 ## \s  匹配任何空白字符;它相当于类 [ \t\n\r\f\v]。
46 ## \S 匹配任何非空白字符;它相当于类 [^ \t\n\r\f\v]。
47 ## \w 匹配任何字母数字字符;它相当于类 [a-zA-Z0-9_]。
48 ## \W 匹配任何非字母数字字符;它相当于类 [^a-zA-Z0-9_]
49 ## \b  匹配一个特殊字符边界,比如空格 ,&,#等

猜你喜欢

转载自www.cnblogs.com/humanskin/p/8982678.html