這個正則表達式有什麼問題?
這個正則表達式驗證中缺少什麼?
^[a-zA-Z,\d,\&,\#,\-,\(,\']{3,15}$
有效輸入是alphanumeric
,space
,#
,&
,'
,,
-
與max和分別在3和15的最小長度。
當我輸入以下有效輸入,它失敗:
MT90#&' ABCD
這個正則表達式有什麼問題?
這個正則表達式驗證中缺少什麼?
^[a-zA-Z,\d,\&,\#,\-,\(,\']{3,15}$
有效輸入是alphanumeric
,space
,#
,&
,'
,,
-
與max和分別在3和15的最小長度。
當我輸入以下有效輸入,它失敗:
MT90#&' ABCD
你錯過了空間\s
,沒必要在字符集使用,
。
這將是確定:
/^[a-zA-Z\d\s&#-\(']{3,15}$/
更新: \s
將匹配所有空白(包括標籤和換行符以及空格),如果你只想空間,更改爲:
/^[a-zA-Z\d &#-\(']{3,15}$/
你不需要逗號分隔符,你不需要逃避所有這些字符:
^[a-zA-Z\d\s&#-\(']{3,15}$
嗨達伍德,不\ d是數字? – user1052591 2012-02-01 04:07:38
你是對的,但你不需要逗號分隔符,你不需要逃避&,#和'。 – Dawood 2012-02-01 04:09:29
^[a-zA-Z\d\&\#\-\(\'\ ]{3,15}$
刪除逗號,你是好去
你缺少空間。試試這個:[a-zA-Z\d\&\#\-\(\' ]{3,15}$
你只需要逃避以下字符:
[ \^$ . | ? * + ()
你也不需要你的字符集之間','
。
如果你在你的正則表達式中使用\s
,它將覆蓋space
,tab
和line breaks
。
'\ s'會匹配* all *空格(包括製表符和換行符以及空格),這在技術上並不是問題的要求。 – 2012-02-01 04:18:57
@MattBrock沒錯,更新了,謝謝。 – xdazz 2012-02-01 04:27:05