/ / Regex per numero di telefono a 9 cifre separato da punti - regex

Regex per numero di telefono a 9 cifre separati da punti - regex

Vorrei verificare se un numero di telefono contiene esattamente 3 cifre - punto - 3 cifre - punto - 3 cifre. (per esempio. 123.456.789)

Finora ho questo, ma non funziona:

^(d{3}){2}d{4}$

risposte:

1 per risposta № 1

Si noti che una parentesi sfuggita ) perde il suo significato speciale in regex e il modello diventa non valido poiché il gruppo di acquisizione non è chiuso.

Se si desidera abbinare un punto a una regex, è necessario includerlo nel proprio modello e se si dice che 3 cifre devono essere alla fine, non ha senso dichiarare 4 cifre con d{4}.

^(d{3}.){2}d{3}$
^       ^

o se espandiamo il primo gruppo:

^d{3}.d{3}.d{3}$

Quindi tutta la correzione consiste nell'aggiungere un punto dopo la seconda barra rovesciata e regolare il quantificatore di limitazione finale.

Si noti che per motivi principalmente di "stilistica" (poiché il guadagno di efficienza è insignificante) utilizzare un gruppo non di acquisizione con la prima variante regex:

^(?:d{3}.){2}d{3}$