Ciao a tutti!
Sto da poco "giocando" con l'uso delle espressioni regolare - in questo caso in javascript - e sono tutt'altro che esperto.
Quello che vorrei fare è verificare se un particolare testo rispetta una precisa regola sintattica.
utilizzo questa RegEx:
var x = /(((\w)+;(\w)+){1}(\n?)$)+/g;
il testo deve avere una o più righe con questa sintessi: Valore;Etichetta
Ad esempio:
1;Rosso
2;Bianco
3;Nero
(il valore può essere alfanumerico)
Quindi applico la verifica in questo modo:
alert("test: " + x.test(testo))
Ma non mi torna.
*Mi rende correttamente TRUE se passo un testo come quello sopra.
*Mi rende correttamente FALSE se passo un testo totalmente sbagliato, come:
testo sbagliato
oppure
1.Rosso
2.Bianco
3.Nero
*MA mi torna TRUE invece di FALSE quando almeno una delle righe è corretta, come:
A;Rosso
B-Bianco
C;Nero
Vorrei un FALSE perchè la seconda riga non rispetta il formalismo che mi sono imposto, ma ho un TRUE poichè almeno una riga lo rispetta (vero?).
Dove sbaglio con la mia RegEx?
il testo è "trimmato", quindi non ci sono spazi o ritorni a capo superflui prima e dopo il testo.
Grazie!