Vai al contenuto
1123.net
IT
1123.net

Cerca strumenti

Filtra l’elenco degli strumenti. Tutto viene eseguito nel tuo browser.

Scrivi per filtrare gli strumenti. Premi Invio per aprire il primo risultato.

Tester di regex

Questo tester esegue espressioni regolari JavaScript sul tuo testo e mostra ogni corrispondenza, la sua posizione e i suoi gruppi di cattura. I pattern vengono valutati in locale, quindi nulla viene caricato o registrato.

I tuoi dati vengono elaborati localmente nel tuo browser e non vengono inviati al nostro server.

Flag
Corrispondenze (2)
Contact ada@example.com or grace@example.org for details.
  1. #1 ada@example.com posizione 8
  2. #2 grace@example.org posizione 27

Come usare questo strumento

  1. 1 Inserisci un’espressione regolare e scegli i flag che ti servono.
  2. 2 Incolla il testo da cercare: le corrispondenze vengono evidenziate ed elencate mentre digiti.
  3. 3 Scegli uno degli esempi comuni per partire da un pattern che funziona.
  4. 4 Copia i valori trovati o svuota il modulo.

Formula e logica di calcolo

Corrispondenze

new RegExp(pattern, flags).exec(text)

Il pattern viene compilato dal motore JavaScript del browser. Senza il flag g viene restituita solo la prima corrispondenza; con g il tester continua fino alla fine del testo.

Flag

g globale · i ignora maiuscole · m multilinea · s dotAll · u unicode · y sticky

I flag cambiano il modo in cui il motore interpreta il pattern. Il tester li passa al costruttore RegExp e segnala gli errori di sintassi con il messaggio del motore.

Esempio svolto

Trovare indirizzi email

Un messaggio di assistenza contiene due indirizzi email.

  1. Pattern: \b[\w.+-]+@[\w-]+\.[\w.]+\b
  2. Flag: g
  3. Risultato: ada@example.com e grace@example.org

Ogni corrispondenza è elencata con il suo indice iniziale; i gruppi di cattura compaiono quando il pattern contiene parentesi.

Catturare una data

Estrarre anno, mese e giorno da date ISO.

  1. Pattern: (\d{4})-(\d{2})-(\d{2})
  2. Flag: g
  3. Gruppi: anno, mese e giorno per ogni corrispondenza

Le parti tra parentesi vengono restituite come gruppi di cattura nell’ordine in cui compaiono nel pattern.

Casi limite e precisione

Backtracking catastrofico

Quantificatori annidati come (a+)+ possono far lavorare il motore in modo esponenziale su alcuni input. Se la pagina si blocca, semplifica il pattern; il tester non può interrompere una regex in esecuzione.

Corrispondenze di lunghezza zero

Pattern come ^ o \b possono corrispondere a una stringa vuota. Dopo una corrispondenza vuota il tester sposta la posizione di ricerca, così non entra in un ciclo infinito.

Solo sintassi JavaScript

Il tester usa la sintassi RegExp di JavaScript, non quella di PCRE o Python. Lookbehind e gruppi con nome funzionano solo nei motori che li implementano.

Domande frequenti

Perché ottengo una sola corrispondenza? +

Serve il flag g (globale) per trovare tutte le corrispondenze. Senza, il tester si ferma al primo risultato.

Che cosa sono i gruppi di cattura? +

Ogni parte del pattern tra parentesi cattura del testo. I gruppi sono numerati da sinistra a destra e mostrati accanto alla corrispondenza, con ∅ per un gruppo facoltativo non trovato.

Il mio pattern e il mio testo vengono caricati? +

No. La ricerca avviene nel tuo browser con il motore RegExp nativo; nulla viene inviato a un server.

Perché la mia regex è lenta? +

Quantificatori annidati e alternanze ambigue possono causare backtracking catastrofico. Riscrivi il pattern in modo più specifico o ancoralo per ridurre lo spazio di ricerca.

Supporta i gruppi con nome? +

Il motore lascia passare la sintassi JavaScript moderna, quindi i gruppi con nome funzionano dove il browser li supporta. L’elenco dei risultati mostra i gruppi numerati.