我正試圖從字符串中提取美國電話號碼。從字符串中提取美國電話號碼
我已經瀏覽了網頁/ SO,但還沒有找到任何適合我需求的解決方案。
說實話,我在網絡編程方面擁有2.5年的經驗,但我在RegEX上很勉強。
這裏是唯一的正則表達式我寫(\d{3}+\-\d{3}+\-\d{4}+)
,但它只能檢測589-845-2889
這裏有電話號碼,我想提取。
589-845-2889
(589)-845-2889
589.845.2889
589 845 2889
5898452889
(589) 845 2889
請告訴我怎樣才能實現這一壯舉在PHP單正則表達式。
編輯:
如果你覺得美國數用戶可以輸入任何其他格式,還提到,爲好,包括在正則表達式爲好。
P.S:
其實我想刮Craiglist上和用戶可能已經張貼在任何可能的形式他們的電話號碼。
589 845-2889'應該匹配嗎? – anubhava
是的,用戶可以輸入他的號碼的任何可能的方式 – Umair
[電話號碼驗證綜合正則表達式]的可能重複(http://stackoverflow.com/questions/123559/a-comprehensive-regex-for-phone-number-驗證) – hugomg