Sto provando a convalidare l'input dell'utente, che è solo numeri separati da virgola. Mi piacerebbe farlo con RegEx, ma non riesco a trovare la giusta espressione.Regex per numero separato da virgola
Occorre convalidare i seguenti stringhe (e più grande):
1
12
123
1,234
12,345
123,456
e invalidare le seguenti stringhe (e pazzo):
1,1
1,12
12,1
12,12
123,1
123,1
Qualsiasi aiuto sarebbe molto apprezzato.
Ecco quello che ho provato finora (EDIT: che non funzionano), insieme a diverse varianti ->
^(((\d{1,3},)*\d{3})|(\d{1,3}))$
^(\d{1,3}[,])*\d{3}|\d{1,3}$
+1 Ben fatto. La mia unica critica: poiché questa espressione regolare è solo per la validazione, è necessario modificare il gruppo di acquisizione in modo che sia un gruppo non di acquisizione. –
Un buon punto, ma mi ha sempre infastidito il fatto che rendere un gruppo non-cattura rendesse l'espressione regex più brutta. –
guardando la regex originale sembra accesa una stringa come 12,1,123 è legale ((\ d {1,3},) * \ d {3}) che sopra non soddisfa –