回答
首先,刪除所有不是數字的數字以獲取普通數字。然後,通過切片獲得的前三個數字:
return myString.replace(/\D/g,'').substr(0, 3);
這是最好的,因爲如果你需要在任何時候對電話號碼進行驗證,這將比正則表達式保持得更好,它也更具可讀性。 – FrankieTheKneeMan
@FrankieTheKneeMan它使用正則表達式。實際上,它使用正則表達式和兩個字符串方法。究竟是什麼讓它比正則表達更易維護呢? – canon
@canon - 任何美國電話號碼都可以用10位數字表示。所有其他格式(空格,連字符,括號等)僅供人類閱讀。雖然這使用正則表達式,但它只是用它來削減所需的最小數量的信息。這也使代碼更易於維護,因爲它(a)更容易閱讀,並且(b)更具可擴展性。 – FrankieTheKneeMan
正則表達式爲'^\(*(\d{3})'
應該這樣做。從比賽中獲得第一個小組。
這裏^
將從頭開始匹配,\d{3}
將匹配3位數字。 \(*
將匹配可選的起始括號。 您不需要關心區號後面的下一個數字或符號。
取一個10位數字的前3位數字,或者從11開始的11位數字中的1後面的前3位數字。假設您的域名是美國電話號碼。
您也可以使用我的圖書館。
https://github.com/Gilshallem/phoneparser
例
parsePhone("12025550104");
result: { countryCode:1, areaCode:202, number:5550104, countryISOCode:"US" }
- 1. PHP:電話號碼解析
- 2. .htaccess解析電話號碼
- 3. 解析電話號碼,零部件
- 4. 從網站解析電話號碼
- 5. 從pdf文件解析電話號碼
- 6. 電話號碼解析和驗證
- 7. 從電話號碼獲取區號
- 8. 電話號碼中的高亮號碼
- 9. 電話號碼
- 10. 電話號碼
- 11. 來自大量電話號碼的電話號碼是另一個電話號碼的前置號碼?
- 12. 如何從SQL中的電話號碼提取*區號*
- 13. 如何解析電子郵件或電話號碼參數?
- 14. 電話號碼的隱藏號碼
- 15. 電話號碼來電顯示/電話號碼
- 16. 解析號碼()
- 17. 根據時區確定電話號碼?
- 18. 如何在Perl中解析電話號碼?
- 19. 將電話號碼轉換爲電話號碼的JavaScript:鏈接
- 20. 使用Callkit打電話號碼不知道的電話號碼
- 21. 從電話號碼條目中選擇區號
- 22. NSDataDetector電話號碼
- 23. 從電話號碼
- 24. Symfony3 - 電話號碼
- 25. Duplicate電話號碼
- 26. 與電話號碼
- 27. 從電話號碼
- 28. Regex電話號碼
- 29. 從電話號碼
- 30. 用*號碼撥打電話號碼
需要了解在其中的電話號碼被找到的數據的一些更多的上下文。這是每行一個電話號碼嗎?電話號碼是否嵌入了文本?單行上可能有多個電話號碼嗎?也許你可以包含一個你試圖提取區域代碼的原始數據的例子。 – David
下面的答案回答了我的問題,我希望我可以接受所有正確的答案:) –