2012-11-01 91 views
0

所以我有這個驗證字母數字的(/^[A-Za-z0-9,\+-]+$/)但是我想驗證一個電話號碼,只允許數字,空格,點和連字符。我將使用什麼代碼來檢查這些代碼。Javascript驗證的電話號碼(數字,空格,點,連字符)

感謝 本

+0

你想讓它接受任何字符串的數字,空格,點和連字符嗎?或只有有效的電話號碼?圓括號,人們經常在區號上加什麼? –

+0

根據我的規格,只有數字,空格,圓點和連字符。這就是任何秩序和任何長度 – Ben

+1

/^[0-9\s\.-]+$/但老實說,我認爲驗證電話號碼是不可能的 – juandopazo

回答

1

根據我的規格它只是數字,空格,只有點和連字符。那是任何順序和任何長度

這將是:

/^[0-9 \.-]+$/ 
1

this reference

/^[\d\s\.\-]+$/ 

\d是一個數字,\s是空白,\.是點,\-是連字符。
+分別表示[]^$分別與字符串的開頭和結尾匹配的「一個或多個」字符。

如果你的電話號碼與一個國家代碼開始,你可能還需要一個加號作爲第一個非空白字符

/^(?:\s*\+)?[\d\s\.\-]+$/ 

這裏,(?: .. )的意思是「不創建一個參考對於此組「,*表示前面的字符爲零個或多個,\+爲加號,( .. )?表示」該組爲可選「。

+0

我不認爲你需要在'[]'內部轉義特殊字符,儘管它當然不會受傷。我正在談論'.'和'-'(而不是其他角色之間)。這也將起作用:'/^[\ d \ s .-] + $ /' – Zecc

+0

@Zecc,真的,但是我總是會逃避它們,因爲如果你使用大括號和大括號,更標準「。 –