2026-10-24 10:41:06
Python正则表达式中的中括号[]是一个强大的字符匹配工具,其核心功能是匹配括号内任意一个指定字符。以下是详细解析和用法总结:
一、基础用法:匹配任意指定字符关键点:仅当字符串首字符属于[abcd]时匹配成功。
语法:[起始字符-结束字符]匹配指定范围内的任意单个字符(如数字、字母)。常用区间:
[0-9]:匹配任意数字(等价于d)。
[a-z]:匹配任意小写字母。
[A-Z]:匹配任意大写字母。
示例:匹配11位手机号(以1开头,第二位为3/4/5/7/8,后接9位数字):
pattern = '1[34578][0-9]{9}'print(re.findall(pattern, '13812345678')) # 输出: ['13812345678']print(re.findall(pattern, '16012345678')) # 输出: [](第二位不匹配)注意:在[]外,.和*是特殊符号(任意字符/重复),但在[]内默认失去特殊含义。
中括号的核心作用:
匹配任意一个指定字符(如[abcd])。
通过-表示范围(如[0-9])。
通过^取反(如[^1])。
常见误区:
[]仅匹配单个字符,如需多个字符需结合量词(如[0-9]{3}匹配3位数字)。
^在[]内表示取反,在[]外表示字符串开头(如^abc)。
实际应用:
验证输入格式(如手机号、密码规则)。
提取特定模式的文本(如日期、邮箱中的字符)。
通过掌握[]的用法,可以高效处理字符级匹配需求,建议结合实际场景多加练习。