Ho il seguente codice. Funziona solo quando ho 2 cifre. Se ho 1 cifra non funziona. Voglio lavorare in entrambi i casi: uno o due cifre.
var numberRegex = /^[1-9][0-9]$/;
Ho provato qualcosa di simile, ma purtroppo non funziona:
var numberRegex = /^[1-9]?[1-9][0-9]$/;
Grazie per il supporto.Uno o due cifre numeriche Regex
10
A
risposta
15
Prova questo fuori:
/^\d{1,2}$/;
Leggendo quello che hai sembra che non si vuole accettare numeri come 01
.
/^\d{1}|[1-9]\d{1}$/;
0
provare questo regex: /^[1-9]\d{0,1}$/
1
Prova questa.
/^[0-9]|[0-9][0-9]$/
Questo dovrebbe fare il lavoro. Usando un operatore O lo fa.
+0
Questa è una soluzione eccellente per i principianti di Regex – GoreDefex
La seconda espressione regolare non è corretta. '|' ha una precedenza inferiore rispetto a '^' e '$'. Puoi anche semplificare semplicemente rendendo '[1-9]' opzionale. '/^[1-9]? \ D {1} $ /' –
Appena realizzato si può fare anche meglio - '\ d {1}' è ridondante, ed equivalente a '\ d'. –
Vorrei andare con '/^[1-9]? \ D $ /' Non c'è bisogno di alternanza, basta rendere la cifra iniziale opzionale. –