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 回答