正则表达式简单总结

1 几种简单的正则:

 . 匹配任意字符(换行符除外)

* 匹配前一个字符0次或者无限次

?匹配前一个字符0次或1次

.*贪婪算法

.*?非贪婪算法

() 将括号的内容返回

2. 重用方法:
findall 匹配所有满足规律的内容,并返回一个列表

seach 匹配并提取第一个符合规律的内容并返回一个正则表达式的对象

sub 替换符合规律的内容,并返回替换后的值

 简单的练习代码:

 1 import re
 2 # . 
 3 string = 'aawaafgfdaashiaavcvcvaatianaavcvcvcaacaiaacxcx'
 4 a='xy123'
 5 b=re.findall('x.',a)
 6 print b
 7 
 8 # *
 9 a='xyxy123'
10 b=re.findall('x*',a)
11 print b
12 
13 #..............
14 
15 res=re.findall('aa(.*?)aa',string)
16 for i in res:
17     print i


3. re.S

默认情况下模式串是包含换行符的,要想去掉换行符可以采用re.S

使用以下代码作比较

string = """aaw
                aafgfdaashiaavcvcvaatianaavcvcvcaacaiaacxcx
"""

res=re.findall('aa(.*?)aa',string)
for i in res:
    print i

res=re.findall('aa(.*?)aa',string,re.S)
for i in res:

    print i 

原文地址:https://www.cnblogs.com/acvc/p/4520000.html