Stackoverflowで他の質問を読みましたが、まだ詳しくはありません。申し訳ありませんが、これはすでに回答済みですが、そこで提案されたものは何も機能しませんでした。
>>> import re
>>> m = re.match(r'^/by_tag/(?P<tag>\w+)/(?P<filename>(\w|[.,!#%{}()@])+)$', '/by_tag/xmas/xmas1.jpg')
>>> print m.groupdict()
{'tag': 'xmas', 'filename': 'xmas1.jpg'}
すべてが順調です。次に、ノルウェー語の文字を含むもの(またはよりユニコードのようなもの)を試してみます。
>>> m = re.match(r'^/by_tag/(?P<tag>\w+)/(?P<filename>(\w|[.,!#%{}()@])+)$', '/by_tag/påske/øyfjell.jpg')
>>> print m.groupdict()
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
AttributeError: 'NoneType' object has no attribute 'groupdict'
øæåのような典型的なUnicode文字をどのように一致させることができますか?上記のタググループとファイル名のタググループの両方で、これらの文字も一致させることができるようにしたいと思います。