re模块中常用功能函数
- compile(pattern, flags=0) 返回一个对象的模式
- match(pattern, flags=0) 决定RE是否在字符串刚开始的位置匹配。
- search(pattern,string, flags=0)
re.search函数会在字符串内查找模式匹配,只要找到第一个匹配然后返回,如果字符串没有匹配,则返回None。 - findall(pattern,string, flags=0) 可以获取字符串中所有匹配的字符串,返回一个列表
- split(pattern,string[, maxsplit]) 按照能够匹配的子串将string分割后返回列表。maxsplit:最大分割次数
- sub(pattern, repl, string, count)
- subn(pattern, repl, string, count=0, flags=0) 返回替换次数
贪婪匹配与非贪婪匹配
*?,+?,??,{m,n}? 前面的*,+,?等都是贪婪匹配,也就是尽可能匹配,后面加?号使其变成惰性匹配
.*? 是一个固定的搭配,.和*代表可以匹配任意无限多个字符,加上?表示使用非贪婪模式进行匹配,会尽可能短地做匹配
去掉html标签
re_com = re.compile('</?\w+[^>]*?>')
re_com.sub('',string)
去标签参考文章:http://blog.163.com/jackylau_v/blog/static/175754040201111511753770/
re模块参考文章 http://www.cnblogs.com/tina-python/p/5508402.html