0

我有表单,我希望它的字段不匹配任何数字和任何特殊字符。

现在,

我有这样的

name = forms.RegexField(regex = r'[^0-9]+$') 

它现在只是逃避数字。

如何为转义数字和特殊字符设置正则表达式模式。有什么建议吗?

4

3 回答 3

0

这是一个查看所有正则表达式符号的表格:

http://www.javascriptkit.com/jsref/regexp.shtml

对于您的问题,如果我了解您想要的应该是... r'[a-zA-Z]+$'

不知道,但是看看链接中的表格,它非常有用。

于 2013-02-01T09:05:46.873 回答
0

据我了解,您只需要匹配字母。

要兼容 unicode,请使用属性

\p{L}+

这将匹配任何语言的一个或多个字母。

于 2013-02-01T10:17:14.060 回答
0

假设允许包含字母和数字的单词,这个正则表达式可以完成工作

[a-zA-Z0-9]*[a-zA-Z]+[a-zA-Z0-9]*

这将检查输入字段是否必须包含至少一个字符,并且只允许使用字母或字母和数字的组合。不允许使用特殊字符。abc 12abc abc12有效,但123 ab@/无效。

我所做的是,我颠倒了方法。我没有限制特殊字符,而是只允许字母和上述组合。这会自动限制特殊字符。


如果需要转义数字,则可以使用此正则表达式:

[a-zA-Z]+

这将只允许字母,并将限制所有数字和所有特殊字符。

于 2013-02-01T09:06:36.687 回答