2013-05-20 110 views
0

这是我的代码:jQuery正则表达式检查:没有最小长度?

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

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

但它不工作...

我是什么做错了?

DoJoChi

回答

0

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

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'或仅瓦特 问题二{150}未启用任何使用{10150}这意味着如果它是最小的10个字符。

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

+0

嘿Ziinloader,u能解释一下,什么W可以完成或立场对于?此外,我需要此字段**可选**,因此应该可以将其保留为空。但{0,150}不起作用。奇怪的是,当输入3个字符时,它确认无误。 – ItsMeDom

+0

'\ w'与[A-Za-z0-9_]意思相同** ** **。尝试使用这个正则表达式'^(| [a-zA-Z \wäöüÄÖÜß\ - ] [a-zA-Z0-9 \wäöüÄÖÜß\ - ] [\ w。,@ &(){} \ [\]:;! ?\wäöüÄÖÜß\ - ] {0,150})$'。从一开始** ^(| **意味着如果空的else。所以它应该允许你的正则表达式返回true。^ =以...开始,(=开始词对象,| =或者其他。希望这可以帮助你 – Ziinloader

0

看来你忘了把括号和?,使整个正则表达式可选。我也很肯定{,150}不是一个有效的语法。它应该是{x,150}其中x是一个数字,149之间0和

那么,到底,你的正则表达式应该是这样的:

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