Come testare una regex e leggere le corrispondenze
Inserisci una regex e un testo di prova, poi avvia la valutazione per vedere corrispondenze, posizioni, testo trovato e gruppi catturati. Un pattern vuoto, un testo vuoto con pattern presente o una regex non compilabile portano al fallimento.
A cosa serve Regex Tester
Regex Tester serve a verificare un’espressione regolare su un testo di prova e a esaminare i risultati della ricerca. Oltre a indicare se la valutazione è valida, il risultato riuscito può riportare il numero totale delle corrispondenze, la posizione iniziale e finale di ciascuna, il testo trovato e i gruppi catturati. È utile quando vuoi controllare non solo se una regex trova qualcosa, ma anche quale parte del testo ha individuato e quali gruppi ha acquisito.
Come testare una regex
-
Inserisci il pattern nel campo dedicato. Il pattern non è obbligatorio nel contratto di input, ma lasciarlo vuoto fa fallire la valutazione prima della ricerca.
-
Inserisci il testo su cui eseguire il controllo. Anche questo input può iniziare vuoto, ma quando hai fornito un pattern il testo vuoto fa fallire la valutazione.
-
Se ti servono modalità aggiuntive, inserisci nei flag i caratteri supportati:
iper ignorare la differenza tra maiuscole e minuscole,mper il comportamento multilinea,sper consentire al punto di includere le interruzioni di riga,xper la modalità verbose,uper Unicode eaper ASCII. I caratteri diversi da questi sei non attivano alcuna modalità. -
Avvia la valutazione. Se il pattern è valido e il testo non è vuoto, lo strumento cerca le corrispondenze. Un pattern che non può essere compilato come espressione regolare porta invece al fallimento della valutazione, senza dettagli sulle corrispondenze.
Come leggere il risultato
Quando la valutazione riesce, controlla prima l’indicatore di validità e il numero totale delle corrispondenze. Un totale pari a zero indica che il pattern è stato valutato senza trovare corrispondenze; non equivale a un errore. Se sono presenti risultati, per ogni corrispondenza puoi leggere le posizioni di inizio e fine, il testo individuato e i gruppi catturati. I gruppi possono essere numerati oppure nominati quando il pattern li contiene.
Interpreta quindi le posizioni insieme al testo trovato: così puoi verificare dove la regex interviene e se i gruppi contengono le parti attese. Se la valutazione fallisce, controlla prima che il pattern possa essere compilato e che il testo non sia vuoto quando hai inserito un pattern. Verifica anche i flag: un carattere non riconosciuto viene ignorato e non modifica la modalità di ricerca.
Esempio pratico
Vuoi controllare che una regex riconosca un indirizzo con una parte locale e un dominio separato da @.
Inserisci il pattern ([a-z]+)@([a-z]+\.[a-z]+) e il testo contatto: anna@example.it, quindi avvia la valutazione senza flag.
La valutazione è valida e trova 1 corrispondenza: il testo anna@example.it, con il primo gruppo numerato uguale a anna e il secondo uguale a example.it, oltre alle relative posizioni di inizio e fine.
Limiti
- Sono attive solo le modalità associate a
i,m,s,x,uea; gli altri flag vengono ignorati. Una regex non compilabile non produce dettagli sulle corrispondenze.
Errori comuni
- Errore: avviare il controllo con il pattern vuoto oppure con testo vuoto dopo aver inserito un pattern. Correzione: inserisci un’espressione regolare e un testo di prova non vuoto prima di avviare la valutazione.
Domande frequenti
Posso verificare una regex che non trova risultati?
Sì, se il pattern è valido e il testo non è vuoto la valutazione può riuscire anche senza trovare corrispondenze: il risultato indica un totale pari a zero.
Quali flag posso usare?
Sono riconosciuti i, m, s, x, u e a, rispettivamente per maiuscole e minuscole, multilinea, dot-all, modalità verbose, Unicode e ASCII. Gli altri caratteri vengono ignorati.
Che cosa mostra il risultato della regex?
Il risultato riuscito include il numero totale delle corrispondenze e, per ciascuna, posizioni di inizio e fine, testo trovato e gruppi catturati, inclusi quelli numerati e quelli nominati quando presenti.