jQuery正则表达式检查:没有最小长度?

时间:2013-05-20 11:01:42

标签: jquery regex html5

这是我的代码:

<input type="text" id="Desc" placeholder="Beschreibung (Optional)'"  pattern="^[a-zA-Z\wäöüÄÖÜß\- ][a-zA-Z0-9\wäöüÄÖÜß\- ][\w-.,@&amp;(){}\[\]:;!?\wäöüÄÖÜß\- ]{,150}$" />            

应该做什么: 字段为空时忽略(无最小字符)

但它不起作用......

我做错了什么?

DoJoChi

3 个答案:

答案 0 :(得分:0)

试试这个:pattern="(^[a-zA-Z\wäöüÄÖÜß\- ][a-zA-Z0-9\wäöüÄÖÜß\- ][\w-.,@&amp;(){}\[\]:;!?\wäöüÄÖÜß\- ]{,150}$)?"

答案 1 :(得分:0)

试试这个:

<input type="text" id="Desc" placeholder="Beschreibung (Optional)'"  pattern="^[a-zA-Z\wäöüÄÖÜß\- ][a-zA-Z0-9\wäöüÄÖÜß\- ][\w.,@&amp;(){}\[\]:;!?\wäöüÄÖÜß\- ]{5,150}$" />

首先 w - 无法执行任何操作的问题,请使用 w + w?或仅 w 第二个问题 {,150} 并非使用 {10,150} ,这意味着它至少是10个字符。

复制正则表达式并将其设置为http://regexpal.com/,然后您可以尝试一下。希望这会帮助你。

答案 2 :(得分:0)

似乎你忘了放括号和?来使整个正则表达式可选。我也非常确定{,150}不是有效的语法。它应该是{x,150},其中x是0到149之间的数字。

所以,最后,你的正则表达式应该是这样的:

^([a-zA-Z\wäöüÄÖÜß\- ][a-zA-Z0-9\wäöüÄÖÜß\- ][\w-.,@&amp;(){}\[\]:;!?\wäöüÄÖÜß\- ]{1,150})?$