0

我已经从一个站点添加了一个正则表达式来验证用户名,它应该可以工作,但它在编译时给出了一些错误。请看图片,然后我用谷歌搜索并了解到很少有像 '\w' 这样的字符不起作用,因为 js 不支持它。现在我不知道如何转换它,任何人都可以帮助将它转换为可使用 ASP.NET MVC 数据注释。

[RegularExpression("^([a-zA-Z])[a-zA-Z_-]*[\w_-]*[\S]$|^([a-zA-Z])[0-9_-]*[\S]$|^[a-zA-Z]*[\S]$")]

谢谢大家。

4

1 回答 1

0

通过在开头引号前添加 @ 符号使您的字符串成为文字。否则,您需要转义字符串包含的所有反斜杠。这将使像这样的正则表达式的可读性更差。

[RegularExpression(@"^([a-zA-Z])[a-zA-Z_-]*[\w_-]*[\S]$|^([a-zA-Z])[0-9_-]*[\S]$|^[a-zA-Z]*[\S]$")]

文字字符串使您可以使用 反斜杠或双引号等特殊字符,而无需使用特殊代码或转义字符。这使得文字字符串非常适合自然包含许多反斜杠的文件路径。要创建文字字符串,请在字符串的开头引号之前添加 at 符号 @

于 2012-09-08T21:00:23.827 回答