python正则表达式中\w居然能匹配汉字,请问是怎么一回事???

首先:python版本3.4.3其次:如上图\w能把汉字、字母、数字匹配出来\W就不用说了。。请问:不是说\w只匹配单个的字母或数字么。。什么时候汉字也行了。。而且hel... 首先: python版本3.4.3
其次:如上图
\w 能把汉字、字母、数字匹配出来
\W就不用说了。。
请问:不是说\w只匹配单个的字母或数字么。。什么时候汉字也行了。。而且help(re)里面的doc string中也只说明了\w只能匹配单个字母或数字。难道是此版本把\w弄错啦?
展开
 我来答
albumin
2015-04-03 · TA获得超过1.2万个赞
知道大有可为答主
回答量:4889
采纳率:87%
帮助的人:2403万
展开全部
\w匹配的是能组成单词的字符,在python3 中re默认支持的是unicode字符集,当然也支持汉字
如果要让\w仅支持英文,加个re.A标志
print(re.findall(r"\w",s,re.A))
这样就不会匹配汉字了
追问

呵呵。谢谢。。我已经知道了re.L和re.U 的区别。而且我在代码前面加了一句

# coding: UTF-8..  所以才导致这样的。。


还有个问题麻烦你帮我解答下:

  下图是我想的求素数的一种思路。。求100以内的所有素数。。但是在filter哪里出现问题了。求解释??

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式