1

我正在尝试编写一个 MVC 模型验证来验证字符串中是否有 10 个或更多单词。该字符串已正确填充,因此我没有包含 HTML。我已经进行了相当多的研究,似乎我所尝试的某些东西应该有效,但是,无论出于何种原因,我的似乎总是失败。关于我在这里做错了什么的任何想法?

(使用 System.ComponentModel.DataAnnotations,在 mvc 4 vb.net 环境中)

已经尝试过([\w]+){10,}, ((\\S+)\s?){10,}, [\b]{20,}, [\w+\w?]{10,}, (\b(\w+?)\b){10,}, ([\w]+?\s){10}, ([\w]+?\s){9}[\w], ([\S]+\s){9}[\S],([a-zA-Z0-9,.'":;$-]+\s+){10,}以及更多关于同一基本思想的变体。

<Required(ErrorMessage:="The Description of Operations field is required"), RegularExpression("([\w]+){20,}", ErrorMessage:="ERROZ")>
Public Property DescOfOperations As String = String.Empty

正确的解决方案是([\S]+\s+){9}[\S\s]+

4

2 回答 2

0

编辑将接受的版本移到顶部,删除未使用的版本。除非我错了并且整个序列需要匹配,否则类似(也考虑双空格):

([\S]+\s+){9}[\S\s]+

或者:

([\w]+?\s+){9}[\w]+
于 2013-02-01T15:52:18.490 回答
0

试试这个:

([a-zA-Z0-9,.'":;$-]+\s){10,}

于 2013-02-01T16:11:38.623 回答