簡體   English   中英

寬松的電話正則表達式驗證

[英]Loose telephone regex validation

我一直在嘗試尋找驗證正則表達式來對電話號碼進行一些寬松的驗證。 使用它們時,我將刪除其中的一些內容,但是我希望允許用戶自由輸入所需的號碼,並且希望在輸入時顯示出來。

我認為最好的辦法是將我的角色列入白名單。 我想到了

[space] + - [0-9] ( )

我還應該允許其他字符嗎? 我不太確定是否要在模式中查找與此字符不匹配的字符?

到目前為止,我所能想到的是,

[\+0-9\s\-\(\)]

哪個似乎匹配每個字符

我一直在這里玩, http://gskinner.com/RegExr/

以此作為我的數據,

+44 787 553 7794
+1-818-923-4821
&9_981-432 p

+44 (0) 20 874 1932

如果有人能向正確的方向推動我,我將非常感激! 謝謝 :)

^[\+0-9\s\-\(\)]+$

^和$將確保我們匹配整個字符串

+(在最后的$之前)將使范圍與整數(多個字符)匹配

在用戶輸入字符串時保留該字符串,然后刪除所有非數字或#或+(如果要撥號)的字符串,該怎么辦?

以此為我的數據,+ 44(0)20 8874 1932

當遇到無效格式,例如+44(0)20 8874 1932時,簡單地刪除括號將導致無效編號+44 020 8874 1932。

對於國際使用,此號碼應顯示為+44 20 8874 1932,對於國家使用,應顯示為(020)8874 1932。

國際格式不包括方括號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM