如何快速查询Python正则表达式速记字符类的完整列表?
Python正则表达式简写字符类及特殊转义序列汇总
首先确认你的假设完全正确:Python文档里提到的"Character classes"在这里特指这类简写的特殊字符组,并非所有Unicode字符。你要找的\d、\s、\w等转义序列,官方文档里有专门的汇总章节,之前没找到可能是定位的位置不对。
核心简写字符类(匹配字符组)
在Python re模块的「正则表达式语法」章节中,"Character Classes"小节直接列出了这些常用的简写形式,包括大小写对应的反向匹配:
\d:匹配任意十进制数字,ASCII模式下等价于[0-9];Unicode模式下匹配所有Unicode数字字符\D:匹配任意非数字字符,ASCII模式下等价于[^0-9]\s:匹配任意空白字符(空格、制表符、换行符、换页符等),ASCII模式下等价于[ \t\n\r\f\v];Unicode模式下还包含其他Unicode空白符\S:匹配任意非空白字符,ASCII模式下等价于[^ \t\n\r\f\v]\w:匹配任意字母、数字、下划线,ASCII模式下等价于[a-zA-Z0-9_];Unicode模式下匹配所有Unicode字母数字字符加下划线\W:匹配任意非字母数字下划线的字符,ASCII模式下等价于[^a-zA-Z0-9_]
你提到的\A等特殊位置锚点
\A属于锚点类转义序列(不属于字符类,但你明确提到了),同样在官方文档的「正则表达式语法」的"Anchors"小节有汇总:
\A:匹配字符串的绝对起始位置(不受多行模式影响,和^的区别是^在多行模式下会匹配每一行的开头)\Z:匹配字符串的结束位置(包括字符串末尾换行符之前的位置)\z:匹配字符串的绝对结束位置(不包含末尾的换行符)\b:匹配单词边界(即\w和\W字符之间的位置,比如单词和标点之间)\B:匹配非单词边界
快速查询技巧
如果想在官方文档里快速找到这个汇总,不需要全局搜索单个字符(比如\w),直接定位到re模块文档的「Regular Expression Syntax」章节,或者在文档内搜索关键词**"shorthand character classes"**,就能直接跳转到这个汇总列表区域,每个条目都有清晰的说明,包括ASCII/Unicode模式的差异,比逐个搜索高效得多。
内容的提问来源于stack exchange,提问作者user11566345
相关产品推荐
相关产品推荐

