2013-05-20 77 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})?$