Attenzione, come scritto, la soluzione di Peter "accetterà" 0000
. Se si desidera convalidare numeri compresi tra 1000
e 999999
, allora questo è un altro problema :-)
^[1-9][0-9]{3,5}$
ad esempio bloccherà l'inserimento 0
all'inizio della stringa.
Se si desidera accettare 0 padding, ma solo fino a una lunghezza di 6, in modo che 001000
sia valido, diventa più complesso. Se usiamo look-ahead allora possiamo scrivere qualcosa come
^(?=[0-9]{4,6}$)0*[1-9][0-9]{3,}$
Questa prima controlla se la stringa è lunga 4-6 (?=[0-9]{4,6}$)
, poi salta gli 0 0*
e la ricerca di un non-zero [1-9]
seguito da almeno 3 cifre [0-9]{3,}
.
Prova '[0-9] {4,6}' –
Grazie ha risolto il mio problema, si prega di aggiungere come una risposta –
Si deve sempre specificare la lingua in uso dal tuo regex da. Mentre per le regex semplici non potrebbe essere importante, quelle più complesse dipendono dalla lingua di partenza. È anche scritto nel tag. – xanatos