Sto cercando di estrarre solo numeri di telefono USA da una stringa.Estrarre numeri di telefono statunitensi da una stringa
Ho cercato sul Web/SO ma non ho trovato nessuna soluzione adatta alle mie esigenze.
Per essere onesti, ho 2,5 anni di esperienza nella programmazione Web, ma faccio schifo a Regex.
Qui è solo espressione regolare che ho scritto (\d{3}+\-\d{3}+\-\d{4}+)
ma rileva solo 589-845-2889
Qui ci sono i numeri di telefono che voglio estrarre.
589-845-2889
(589)-845-2889
589.845.2889
589 845 2889
5898452889
(589) 845 2889
Per favore dimmi come posso ottenere questa impresa in singolo Regex per PHP.
EDIT:
Se si sente qualsiasi altro formato di numero degli Stati Uniti un utente può inserire, menziona anche che pure, e comprendono che in RegEx pure.
P.S:
In realtà io sto cercando di raschiare Craiglist e l'utente potrebbe aver pubblicato il loro numero di telefono in qualsiasi formato possibile.
"589 845-2889" potrebbe essere una corrispondenza? – anubhava
Sì, qualsiasi modo in cui un utente può inserire il proprio numero – Umair
Possibile duplicato di [Un'espressione regolare per la convalida del numero di telefono] (http://stackoverflow.com/questions/123559/a-comprehensive-regex-for-phone-number- validazione) – hugomg