我有一个实体框架模型,我已经对其进行了一些验证,特别是一个接受字母数字、空格和一些标点符号的正则表达式。但是,当尝试添加斜杠“/”作为可接受的字符时,它似乎允许一些额外的不可接受的字符(在本例中为逗号)。
表达式 1:
[RegularExpression(@"[\w\s.()&'-]+", ErrorMessage = "Contains an illegal character")]
这适用于除正斜杠之外的所有预期字符(即它不接受逗号,但也不接受斜杠)
表达式 2:
[RegularExpression(@"[\w\s.()&'-/]+", ErrorMessage = "Contains an illegal character")]
这现在接受斜杠(好),但现在也接受逗号(不需要)
表达式 3:
[RegularExpression(@"[\w\s.()&'-\/]+", ErrorMessage = "Contains an illegal character")]
试图逃避正斜杠。与 experssion 2 相同的效果,接受斜杠和逗号
这只是我需要做的一些奇怪的转义或类似的技巧吗?.Net 正则表达式的一些副作用?我绝对认为“表达式 2”会接受斜杠,但不接受逗号,但事实似乎并非如此。