/ / Używanie Regex do sprawdzania liczby słów w obszarze tekstowym - regex, asp.net-mvc, vb.net

Używanie Regex do sprawdzania liczby słów w obszarze tekstowym - regex, asp.net-mvc, vb.net

Próbuję napisać walidację modelu MVCweryfikuje, czy w ciągu występuje 10 lub więcej słów. Łańcuch jest poprawnie wypełniany, więc nie uwzględniłem kodu HTML. Zrobiłem sporo badań i wydaje mi się, że coś na wzór tego, co próbuję, powinno zadziałać, ale z jakiegoś powodu moje zawsze kończy się niepowodzeniem. Jakieś pomysły dotyczące tego, co robię źle tutaj?

(przy użyciu System.ComponentModel.DataAnnotations, w środowisku mvc 4 vb.net)

Próbowałem ([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,} i kilka innych wariacji na temat tej samej podstawowej idei.

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

Prawidłowe rozwiązanie było ([S]+s+){9}[Ss]+

Odpowiedzi:

0 dla odpowiedzi № 1

EDYCJA Przeniesiono zaakceptowaną wersję na górę, usuwając nieużywane wersje. Chyba że się mylę i cała sekwencja musi się zgadzać, a następnie coś podobnego (również z uwzględnieniem podwójnych spacji):

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

Lub:

([w]+?s+){9}[w]+

0 dla odpowiedzi nr 2

Wypróbuj to:

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