如果是特殊字符,可以使用\进行转义处理
.:匹配除换行符以外的任意字符
^:匹配字符串的开始
$:匹配字符串的结束
\b:匹配单词的开始或结束
\d:匹配数字
\s:匹配任意的空白符
\w:匹配字母或数字或下划线或汉字
*:重复0或多次
+:重复1或多次
?:重复0或1次
[a-z]:匹配a-z 1次
分支条件:具体方法是用|把不同的规则分隔开
\W:匹配不是字母,数字,下划线,汉字的字符
\S:匹配任意不是空白符的字符
\D:匹配任意非数字的字符
[^x]:匹配除了x以外的任意字符
后向引用:
贪婪匹配与懒惰匹配
a.*b:匹配最长的以a开始以b结束的字符串
a.*?b:匹配最短的以a开始,以b结束的字符串
*?:重复任意次,但尽可能少重复
+?:重复1次或更多次,但尽可能少重复
??:重复0次或1次,但尽可能少重复
{n,m}?:重复n到m次,但尽可能少重复
{n,}?:重复n次以上,但尽可能少重复
|:eg(A|B):即匹配A或B中的一个
():匹配括号内的任意正则表达式
(?=...) eg.Isaac(?=Asimov)匹配"Isaac"只是在后面是'Asimov'的时候
函数:
re.compile: