Python 正则表达式不喜欢国际字符

Python 正则表达式不喜欢国际字符,python,regex,Python,Regex,可能重复: 使用 在Fältskog上,返回F和ltskog。我尝试了字符串和unicode,但都是一样的。结果您需要设置(在这种情况下,告诉re什么是\w的意思): 您需要设置(在这种情况下,告诉re什么是\w的意思): 关于findall(r'[åääääÖ\w]+',ip) 如果你想更直观,你也可以这样做。re.findall(r'[åäöÄÖ\w]+',ip) 如果希望更直观,也可以这样做。需要指定re.LOCALE和re.UNICODE标志。(如果要依赖当前区域设置,否则,re.UN

可能重复:

使用

Fältskog
上,返回
F
ltskog
。我尝试了字符串和unicode,但都是一样的。结果

您需要设置(在这种情况下,告诉
re
什么是
\w
的意思):

您需要设置(在这种情况下,告诉
re
什么是
\w
的意思):

关于findall(r'[åääääÖ\w]+',ip)

如果你想更直观,你也可以这样做。

re.findall(r'[åäöÄÖ\w]+',ip)


如果希望更直观,也可以这样做。

需要指定re.LOCALE和re.UNICODE标志。(如果要依赖当前区域设置,否则,re.UNICODE将匹配所有语言中的所有字母数字)。您需要指定re.locale和re.UNICODE标志。(如果要依赖于当前区域设置,否则,re.UNICODE将匹配所有语言中的所有字母数字)。这将返回
['F\xc3','ltskog']
,而不是作为单个单词返回。请检查。我的错,我给了它一个非unicode字符串开始。接受此项。此项返回的是
['F\xc3','ltskog']
,而不是单个单词。请检查。我的错,我给了它一个非unicode字符串开始。我接受了这个。
re.findall(r'\w+', ip)
re.findall(r'\w+', ip, re.UNICODE)

# EDIT

Python 2.7.3 (default, Aug  1 2012, 05:16:07) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import re
>>> re.findall(r"\w+", u"Fältskog", re.UNICODE)
[u'F\xe4ltskog']
>>>