正则表达式(re)
一、特殊符号
"""
引入正则表达式:进行模糊匹配
*:匹配0 ~ ∞次;贪婪匹配
在*后加?(*?)设置为惰性匹配,按最小次数匹配
.:通配符
?:匹配0 ~ 1次
+:匹配1 ~ ∞次;贪婪匹配
在+后加?(+?)设置为惰性匹配,按最小次数匹配
^:从头匹配
$:从尾匹配
{}:自定义匹配次数
():
?: : 取消分组优先级
[]:字符集 其中选择一个匹配,取消元字符的特殊功能(\ ^ - 例外)
[0-9], [a-z], [A-Z]
[^t]:表示除了t以外的所有字符,表示取反
\:反斜杠后面跟元字符去除其特殊功能,后面跟普通字符实现特殊功能
\d = [0-9]
\D = [^0-9]
\s = [ \t\r\n\f\v]
\S = [^ \t\r\n\f\v]
\w = [a-zA-Z0-9]
\W = [^ a-zA-Z0-9]
\b: 匹配一个特殊字符的边界,也就是指单词和空格间的文职
| :或
re.findall(pattern, string) 找出所有符合规则的字符
re.finditer(pattern, string) 返回一个迭代器
re.search(pattern, string) 返回匹配到的第一个对象,可以用group()方法返回结果
re.match() 旨在字符串开始匹配,返回匹配到的第一个对象,可以用group()方法返回结果
re.split(pattern, string, maxsplit, flags) 按规则分隔字符串
re.sub(pattern, repl, string, count): 替换
re.subn() : 替换,会返回替换了多少次
re.compile(pattern) # 将规则编译成一个对象方便多次使用
"""
二、re方法
import re
ret = re.findall("o[qwl]f", 'wolf') # 选择[]中的一个匹配,
print(ret)
[‘olf’]
ret = re.findall(