1

如果输入的文本与我的模式不匹配:

^(\b[\n]\w*\s*)+$

也就是说,如果在输入的文本中找到 \n 字符,那么文本将不会被验证,但我想将最小和最大长度添加到所有整个字符串中。我希望如果文本与模式不匹配,并且字符串长度低于 3 且超过 10,那么它将不会被验证,我知道以下模式不正确,但至少我正在尝试像这样修改它:

^(\b[\n]\w{3,10}\s*)+$

样品:

FrogFrog
FrogFrog <- it won't validated because has \n and exceed 10

Frog
Frog <- it won't validated because has \n

FrogFrogFrog <- it wont't validated because exceed than 10

FrogFrogFr <- it is valid because no \n character and not exceed than 10

有什么更正或建议吗?

4

2 回答 2

0

您可以使用单词字符开始匹配以匹配至少一个字符。

然后使用字符类重复 2-9 次匹配单词字符、空格或制表符,并以结束模式\z来断言字符串的结尾。

^\w[\w \t]{2,9}\z

例如,一个带有 match的正则表达式演示和一个没有 match的正则表达式演示。

于 2020-11-03T17:35:01.520 回答
0

试试这个正则表达式:

^([\w\s]{3,10})(?!\n)$
于 2020-11-03T05:51:04.280 回答