5

フィールド付きのフォームがあります:

name = forms.RegexField(regex=r'\w+$', label=u'Name', required=True)

しかし、特別な文字(たとえばś)を入力した場合、is_valid()関数を渡さないでください。どうやってするの?

4

2 に答える 2

5

のUnicodeマッチングをアクティブにし\wます。

name = forms.RegexField(regex=r'(?u)\w+$', label=u'Name', required=True)
于 2012-10-01T06:28:56.753 に答える
3

正規表現を文字列として定義する代わりに、最初に正規表現オブジェクトにコンパイルして、re.Uフラグを設定できます。

import re

name_regex = re.compile(r'\w+$', re.U)
name = forms.RegexField(regex=name_regex, label=u'Name', required=True)
于 2012-10-01T06:29:36.117 に答える