[英]Regular expression issue when validating '/' character
我在使用正則表達式時遇到了一些問題。 我想在輸入總線號時驗證用戶輸入。
例如:37,37A,37S,37A / L,16A / 250,16A / 250K等
我想出的正則表達式是
(^\d{1,3}[A-Z]{0,3})|(^[\d{1,3}[A-Z]{0,3}\/\d{0,3}[A-Z]{0,3}])
它驗證了37,37A,37S,但在驗證37A / L時,它失敗了。 誰能告訴我這里哪里出錯了?
注意:我正在為文本框使用正則表達式驗證器。 我把它放在ValidationExpression中。
您不需要轉義/
字符,請嘗試以下操作:
(^\d{1,3}[A-Z]{0,3}(?:/\d{0,3}[A-Z]{0,3})?)
您還可以通過指定EOS字符來強制整行與正則表達式匹配:
(^\d{1,3}[A-Z]{0,3}(?:/\d{0,3}[A-Z]{0,3})?$)
NB @MaxwellTroyMiltonKing在評論中指出整個正則表達式的括號是不必要的:
^\d{1,3}[A-Z]{0,3}(?:/\d{0,3}[A-Z]{0,3})?$
由於沒有指定字符串的結尾,所以有問題。
替換為此,
(^\d{1,3}[A-Z]{0,3}$)|(^\d{1,3}[A-Z]{0,3}\/\d{0,3}[A-Z]{0,3}$)
希望這可以幫助。
試試這個:
^(\d{1,3}[A-Z]{0,3})(\/\d{0,3}[A-Z]{0,3})?$
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.