正则表达式:匹配、查找字符串,并进行相应的修改处理。
组成:普通字符 a-z,以及下面的元字符:
.:匹配除了换行符外的任何一个字符(换行符:win"\r\n"、mac"\r"、Linux"\n")
^:匹配行首
$:匹配行尾
*:重复0次或者多次
+:重复一次或多次
?:重复0次或1次,另,放在重复元符号后面,表示尽量少重复
{}:指定次数,{n}、{n,}、{n,m}
[]:[xyz]枚举,[^xyz]反枚举,[x-z]、[^x-z]同理
():分组,引用:括号内的东西除了提高优先级,还会被存储,然后在后面被引用
可以多次引用:"([a-b]x\1x\1)"匹配"axaxa"或"bxbxb"
引用不能用于[]内部
对分组使用重复操作符后,引擎不会重复存储
|:或,表示选择
\:转义,接元字符表示其本身,接普通字符表示其它含义(如果接普通字符与已有的ASCII转义字符冲突,则要用r"" 或r' '),大写表示反义
\d:数字字符,相当于[0-9]
\s:空白字符,相当于[\t\n\r\f\v]
\w:单词字符,相当于[a-zA-Z_0-9]
\b:单词边界