元字符
. 表示通配符 可以匹配字母数字等符号但是不可以匹配换行符 \n , 一个.占据一个匹配位置
^ 表示在字符的开头开始来匹配内容
^a 表示字符串的开头是a才能匹配成功
^a 表示字符串的开头是a才能匹配成功
$ 匹配字符串末尾的内容
a$ 表示末尾是a的才能匹配
a$ 表示末尾是a的才能匹配
* + 表示重复匹配 a*表示匹配0到无数次,a+表示匹配1到无数次 他们匹配是贪婪匹配,就是最多有多少个全部匹配
? 表示只匹配重复的0或1次
? + * 默认都只匹配在他们前面的一个字符
{} 大括号表示可以指定重复多少次
a{5} 表示a重复五次的 {5,8} 五到八次的 {5,} 五到无穷次
a{5} 表示a重复五次的 {5,8} 五到八次的 {5,} 五到无穷次
\ 右斜杠
右斜杠后面跟元字符表示去除特殊功能,变成一个普通符号 \.
右斜杠后面跟普通字符可以实现特殊功能 例如
\d 匹配任何十进制数 相当于[0-9]
\D 匹配任何非数字字符 相当于[^0-9]
\s 匹配任何空白字符 相当于[\t\n\r\f\v]
\S 匹配任何非空白字符 相当于[^\t\n\r\f\v]
\w 匹配任何字母数字字符 相当于[a-zA-Z0-9_] 注意这个\w \W 也可以匹配下划线 _
\W 匹配任何非字母数字字符 相当于[^a-zA-Z0-9_]
\b 匹配一个特殊字符边界 如 空格 & # 等等
[ ] 字符集 就表示 或 的意思
a=re.findall(‘x[yz]m‘,‘xymxzm‘)
print(a) #[‘xym‘,‘xzm‘]
[a-z] -在这里表示范围 表示a到z
[^0-9] ^ 在这里表示非 就是只要不是0-9的数字内容全部通过
[\$] \在这里表示转义 将一个具有特殊意义的符号转为一个普通字符处理
在字符集里 只有 ^ \ - 是具有特殊意义的字符号 其他的都当作普通符号处理
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。