2012-01-30 68 views
2

我期待有一個只允許輸入特定數字的正則表達式,例如, 2,4,5,6,10,18正則表達式只允許特定的數字

我想是這樣

"'2'|'4'|'5'|'6'|'10'|'18'" 

和任何我輸入失敗的正則表達式,然後計算機指着我的手指,笑着。

我在哪裏出錯?

+2

你不需要單引號。另外,如果你想匹配整個字符串,你應該在末尾加上'^('在開頭,')$'。 – 2012-01-30 21:28:58

+2

我並不是很擅長RegEx,但我使用[鏈接進行測試](http://regexhero.net/tester/)。可能對您更快地調試問題很有用。 – DotNetUser 2012-01-30 21:32:46

回答

3

單引號是不必要的。正在尋找的正則表達式是:^(2|4|5|6|10|18)$

符號^$表示開始和線路的端部,以防止從121匹配(因爲它包含2)。

+0

很好的解釋,謝謝 – peroija 2012-01-31 00:09:00

+0

我不知道爲什麼我實施了同樣的事情,但沒有工作。我是否需要在asp.net中添加更多屬性,如正則表達式的EnableClientScript? – 2016-09-13 07:52:38

+0

@ArulManivannan:你的問題可能在別的地方。請創建一個[mcve]並開始一個新的問題。 – Heinzi 2016-09-13 07:53:40

相關問題