正则表达式匹配Python中的非英语语言

时间:2011-01-25 13:57:53

标签: python regex unicode python-2.x

我正在尝试在python脚本中捕获和匹配俄语字符。由于俄语字符不属于[a-Z]类型,我应该用什么正则表达式匹配它们。我不能使用(。*),因为它会匹配所有内容。

linkpat = re.compile('name=[a-Z]+;size=[0-9]+')

3 个答案:

答案 0 :(得分:4)

使用unicode标志:

re.compile('name=\w+;size=\d+', re.U)

这也可以匹配任何语言的任何字母(加上下划线),而不仅仅是俄语。

答案 1 :(得分:1)

您可以使用正确的LOCALE

尝试\w

答案 2 :(得分:0)

使用与语言环境相关的字符类