9

我正在使用 MVC 数据注释,我的要求是地址字段可以包含除< > . ! @ # % / ? *.

我搜索了很多网站,但不知道如何编写这个正则表达式。

到目前为止,我已经尝试过:

[Required(ErrorMessage = "Address Required.")]
[RegularExpression(@"^[<>.!@#%/]+$", ErrorMessage = "Address invalid.")]
public string Address { get; set; }
4

4 回答 4

14

使您的正则表达式从除插入符号列出的字符之外的任何字符中进行选择:

[^abc] 

将匹配任何不是 a、b 或 c 的东西。

所以把它们放在一起,你的正则表达式就是

^[^<>!@#%/?*]+$

请注意,方括号外的插入符号表示“匹配行首”,而方括号内的插入符号表示“匹配任何以下内容”

于 2012-09-14T10:29:05.447 回答
13

目前,您只允许仅由这些字母组成的字符串。

利用

"^[^<>.!@#%/]+$"
于 2012-09-14T10:25:27.897 回答
2

尝试是正则表达式:

[^<>.!@#%/?*]
于 2012-09-14T10:25:39.130 回答
1

这应该做的工作:

“[^<>.!@#%/]”

编辑

. (dot) 是正则表达式中的保留字符,因此您需要对其进行转义。

于 2012-09-14T10:26:50.517 回答