3

我正在开发一个带有 Razor 视图引擎的 MVC 4 ASP.NET 应用程序。我在视图中有一个名为“Title”的属性,并已将其元数据设置为:

[RegularExpression(@"^[\p{L}\p{N}\s\,\،\-\(\)\u200C]*$", ErrorMessage = "Some error message")]
public string Title { get; set; }

在视图中,只要我开始在相应的文本框中输入任何字符,它就会显示验证消息。这是剃刀视图:

@Html.LabelFor(model => model.Title)
@Html.EditorFor(model => model.Title)
@Html.ValidationMessageFor(model => model.Title)

我错过了什么吗?

4

1 回答 1

0

客户端验证器使用 javascript,因此正则表达式需要使用特定于 javascript 的语法。

根据regular-expressions.info\p{...}不支持这些构造。

您可能可以替换\p{L}\p{N}\w,具体取决于您的目标字符集。

于 2012-12-04T10:35:18.510 回答