acento.io
Strumento per sviluppatori

Regex Tester

Testa e debug le tue espressioni regolari in tempo reale, direttamente nel browser — i tuoi pattern non lasciano mai il tuo dispositivo.

By Carlos Suárez , Systems engineer
Last updated:

Cosa fa questo Regex Tester

Questo tester di espressioni regolari online esegue il test in tempo reale direttamente nel browser: scrivi il pattern, incolla il testo e vedi subito ogni match evidenziato nel tuo input. Puoi espandere ogni cattura per leggere il valore esatto e la sua posizione — inclusi i gruppi numerati e quelli con nome (?<nome>). Cinque flag JavaScript (g, i, m, s, u) si attivano con un solo clic, così puoi verificare all'istante come cambia il comportamento del pattern. Un sistema di protezione integrato blocca i loop infiniti causati dai match a larghezza zero, come quelli prodotti da ^ o dai lookaround, così la pagina non si blocca mai. 100% lato client — i tuoi dati non lasciano mai il browser. Nessun upload, nessun tracciamento, nessun log sul server. Per chi vuole approfondire la segmentazione del testo con API native, il MDN — Intl.Segmenter offre un ottimo punto di partenza complementare a questo strumento.

Funzionalità

  • Evidenziazione live dei match. Ogni occorrenza trovata viene colorata direttamente nel testo di input, in tempo reale mentre digiti il pattern. Con il flag g attivo vedi tutti i match contemporaneamente.
  • Ispezione dei gruppi di cattura. Tutti i gruppi, sia numerati che nominati (?<nome>), appaiono elencati con il loro valore e la posizione nel testo. Ideale per debug di parser e validatori complessi.
  • Toggle dei flag JavaScript. I flag g, i, m, s, u e y sono selezionabili con un clic. Cambia combinazione e osserva immediatamente l'effetto sul numero e il tipo di match — senza riscrivere nulla.
  • Segnalazione degli errori di sintassi. Se il pattern non è valido, l'errore viene mostrato subito con un messaggio chiaro. Niente stack trace criptici: sai esattamente cosa correggere.
  • Protezione dai loop infiniti. Un guard integrato intercetta i match a larghezza zero che potrebbero bloccare la pagina. Puoi usare liberamente lookahead, ^ e $ senza rischiare che la scheda del browser si congeli.
  • Nessun dato inviato al server. Tutto gira nel motore JavaScript del tuo browser. Pattern e testo non vengono mai trasmessi a un server esterno — utile anche quando lavori con log o dati sensibili aziendali.

Come usare il Regex Tester

Tre passi e sei operativo: incolla il pattern, incolla il testo, premi Testa (o aspetta il live update).

  1. Inserisci il pattern regex. Scrivi la tua espressione regolare nel campo pattern, senza i delimitatori /. Per esempio: (?P<anno>\d{4})-(?P<mese>\d{2})-(?P<giorno>\d{2}) per catturare una data ISO 8601.
  2. Incolla il testo di prova. Nel campo di testo sotto inserisci la stringa su cui vuoi eseguire il test — può essere una riga di log, un CSV, un URL o qualsiasi altro testo.
  3. Attiva i flag necessari. Clicca sui badge dei flag per attivarli. Se vuoi trovare tutti i match usa g; per ignorare maiuscole/minuscole aggiungi i. I risultati si aggiornano in tempo reale.
  4. Leggi i gruppi di cattura. Nell'area risultati trovi ogni match espandibile: valore completo, indice di inizio e fine, e il valore di ogni gruppo nominato o numerato.
  5. Copia il pattern validato. Quando il pattern funziona come previsto, usa il pulsante Copia per incollarlo direttamente nel tuo codice JavaScript o in un altro tool come il [text diff](/it/text-diff/) per confrontare l'output.

Casi d'uso comuni

  • Validare email e URL prima del deploy. Testa il pattern su decine di indirizzi reali prima di spedirlo in produzione. Individua i casi limite — indirizzi con sotto-dominio, tag +, domini internazionali — senza toccare il codice.
  • Estrarre dati da log applicativi. Incolla una riga di log del tuo server e costruisci il pattern passo passo. Con il flag g vedi tutti i match in una volta sola: timestamp, livello, messaggio, tutto separato nei gruppi di cattura.
  • Debug di gruppi nominati per parser. Prima di integrare una regex complessa in un parser Python o Java, verifica qui che ogni ?<nome> catturi esattamente il campo atteso. Risparmia ore di trial-and-error nel tuo IDE.
  • Confrontare combinazioni di flag. Aggiungere i cambia il numero di match? Il flag m altera il comportamento di ^ nel tuo testo multiriga? Clicca e vedi subito la risposta — senza aprire la console del browser.
  • Pulire testo strutturato prima di altri strumenti. Individua il pattern che isola i duplicati o le righe da eliminare, poi porta il risultato nel [remove duplicates](/it/remove-duplicates/) o nel [case converter](/it/case-converter/) per la fase successiva della pipeline.

Domande frequenti

I miei pattern e il testo di test vengono inviati a un server?

No. Questo strumento è 100% lato client: tutto gira nel motore JavaScript del tuo browser. Nessun dato — né il pattern né il testo di prova — viene mai trasmesso a un server esterno. Puoi usarlo tranquillamente anche con log contenenti dati sensibili o proprietari.

Questo tester usa le regex JavaScript o PCRE?

Usa il motore regex di JavaScript (ECMAScript). Funziona perfettamente per chi sviluppa in JS o TypeScript, ma alcune funzionalità PCRE come i pattern ricorsivi o i verbi di controllo del backtracking non sono disponibili. Se stai scrivendo per Python o Java, usa questo tool per la logica di base e poi verifica i dettagli specifici del motore target nel tuo ambiente.

Perché il mio pattern con `.*` cattura troppo?

I quantificatori greedy come .* o .+ consumano il maggior numero possibile di caratteri prima di cedere. Prova la versione non-greedy .*? o .+? per fermarti al primo match utile. Nell'area risultati puoi vedere esattamente quanti caratteri ha catturato ogni gruppo.

Cosa succede se scrivo una regex che produce match a larghezza zero?

Pattern come ^, $ o i lookaround possono generare match di lunghezza zero che in certi motori causano loop infiniti. Questo tester ha un guard integrato che intercetta questi casi e termina l'esecuzione in modo sicuro, mostrando un avviso invece di bloccare la pagina. Il riferimento tecnico per capire il comportamento di questi pattern è la MDN — Intl.Segmenter e la documentazione JavaScript sulle espressioni regolari.

Come si usano i gruppi con nome in JavaScript?

La sintassi è (?<nomeGruppo>pattern). Dopo un match, il valore è accessibile tramite match.groups.nomeGruppo. Questo tester elenca automaticamente tutti i gruppi nominati con il loro valore e indice, così puoi costruire la struttura del tuo oggetto result prima ancora di scrivere il codice.

Posso testare regex per Java o Python qui?

In gran parte sì: la sintassi di base — classi di caratteri, quantificatori, gruppi di cattura, lookahead — è condivisa tra JavaScript, Java e Python. Le differenze riguardano funzionalità avanzate come i verbi PCRE o certi flag specifici del motore. Usa questo online regex tool per la logica principale, poi adatta i dettagli nel tuo ambiente di sviluppo specifico.