python3正则表达式\w可以匹配中文字符
python3正则表达式’\w’居然还可以匹配中文字符
记录一下:
网上搜索有关信息:
1、\w匹配的是能组成单词的字符,在python3 中re默认支持的是unicode字符集,当然也支持汉字。只要加入参数re.A就可以不匹配中文。
2、\w能不能匹配汉字要视你的操作系统和你的应用环境而定
\w 任意一个字母或数字或下划线,也就是 A~Z,a~z,0~9,_ 中任意一个
一般来说,是这样的,但是在某些情况下,\w也会匹配本地字符集,比如中文系统的中文,全角数字等,所以在明确要求是A~Z,a~z,0~9,_ 中的一个的时候,用[A-Za-z0-9_],而不用\w
判定条件我知道的有两个,两个条件是互相制约的:
一是要看你的系统是什么系统,中文系统下是可以匹配汉字的
二是要看你的应用环境,如果是在C#程序中,是可以匹配汉字的,在javascript或验证控件中,是不可以匹配汉字的
其它\d,\s也是如此
(来源:https://bbs.csdn.net/topics/230086608?page=3)
欢迎各位大佬补充相关知识!