.dsy:it.
Show 150 posts per page

.dsy:it. (http://www.dsy.it/forum/)
- Tech (http://www.dsy.it/forum/forumdisplay.php?forumid=189)
-- [regex] Validare numero di telefono (http://www.dsy.it/forum/showthread.php?threadid=22541)


Posted by 0m4r on 07-11-2005 15:05:

[regex] Validare numero di telefono

Ciao a tutti,
qualcuno mi sa aiutare? Sto cercando di scrivere una regex che validi una stringa del tipo +39123456789 (insomma un più seguito da una serie di numeri)...
io ho provato con una cosa tipo

code:
\+[\d]*


ma questo mi valida anche stringhe del tipo +abcde12345 che non è quello che voglio...

__________________
http://www.twitter.com/0m4r


Posted by ripe on 07-11-2005 15:54:

una roba del genere...?

\+[0-9]*

__________________
«And if you ever smell christian blood up in the mountains, then get your axe and chop them down!»


Posted by 0m4r on 07-11-2005 16:08:

ho provato anche in quel modo, ma ho lo stesso risultato della regex che ho postato io... cioè mi prende come valide stringhe del tipo +123ssd15s4ds54, cioè composte sia da numeri che da lettere, ma a me servono solo numeri...
ad ogni modo grazie lo stesso

__________________
http://www.twitter.com/0m4r


Posted by DeepBlue on 07-11-2005 16:34:

Tu a priori sai di quante cifre è composto il numero no?
Quindi suggerirei:

^[\+][0-9]{min,max}

dove min è il numero minimo di numero dopo il + e max e quello massimo.

L'espressione filta la seguente lista correttamente:

+392384747
+sadas4949
+033ssda
2344
asdf
+3445ass345
+as23445



Attenzione che a seconda del linguaggio usato, potrebbe essere necessario escapare le graffe (come ad esempio con grep su linux).

__________________
~ get Debian! ~ get FreeBSD! ~ get OpenBSD! ~


Posted by 0m4r on 07-11-2005 16:38:

grazie DeepBlue,
ma forse non mi sono spiegato bene io, io voglio che sia dato esito positivo SOLO se la stringa è composta da un "+" e da una serie di numeri (che come giustamente hai detto te non so quanti saranno), quindi +abc123 e 123456 NON devono essere corrette, mentre +123456 E' CORRETTA

edit:

code:
^[\+][0-9]*$

questa funziona (quasi) solo che considera corette anche stringe composte solo dal "+"... consigli?

__________________
http://www.twitter.com/0m4r


Posted by DeepBlue on 07-11-2005 16:51:

^[\+]{1}[0-9]*$


strano comunque, a me funziona anche senza {1}

Ma con cosa le crei? Php? perl? o che?

__________________
~ get Debian! ~ get FreeBSD! ~ get OpenBSD! ~


Posted by giulio on 07-11-2005 16:54:

Originally posted by 0m4r
edit:
code:
^[\+][0-9]*$

questa funziona (quasi) solo che considera corette anche stringe composte solo dal "+"... consigli? [/B]


Prova:

"^[\+][0-9]\+$"

l'asterisco matcha 0 o piu' occorrenze del carattere precedente, mentre il "+" matcha una o piu' occorrenze.


Posted by 0m4r on 07-11-2005 16:55:

sto creando delle form con cocoon... anche io avevo pensato all'{1}, ora lo testo e poi ti faccio sapere

ri-ri-edit:
FUNZIONA
almeno sembra, perchè io non ho messo lo slash davanti al + prima del $, se lo mettessi intenderei il carattere "+" o sbaglio?!

code:
^[\+][0-9]+$

grazie Giulio!

__________________
http://www.twitter.com/0m4r


All times are GMT. The time now is 10:52.
Show all 8 posts from this thread on one page

Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.