Testa le tue espressioni regolari in tempo reale con evidenziazione dei match, gestione dei flag e lista dei gruppi catturati.
Inserisci l'espressione regolare nel campo in alto (senza slash iniziale e finale), aggiungi i flag desiderati, poi digita o incolla il testo da testare. I match vengono evidenziati in tempo reale con il numero di corrispondenze trovate. Puoi anche usare i pattern predefiniti (email, URL, telefono, ecc.) come punto di partenza.
I flag modificano il comportamento del matching: g (global) trova tutti i match nel testo, non solo il primo; i (case insensitive) ignora la distinzione maiuscole/minuscole; m (multiline) fa sì che ^ e $ matchino inizio e fine di ogni riga invece dell'intero testo; s (dotAll) fa sì che il punto . matchi anche i caratteri newline.
Alcune regex comuni da conoscere: email [a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}; URL https?:\/\/[\w\-]+(\.[\w\-]+)+; data ISO \d{4}-\d{2}-\d{2}; codice fiscale italiano [A-Z]{6}\d{2}[A-Z]\d{2}[A-Z]\d{3}[A-Z]; numero di telefono internazionale \+?[\d\s\-\(\)]{8,15}. Il tool include pattern predefiniti per i casi più comuni.
Il motore regex di JavaScript (usato da questo tool) è compatibile con Node.js, TypeScript e molti altri linguaggi moderni. Alcune differenze rispetto ad altri ambienti: JS non supporta i lookbehind in versioni molto datate dei browser (supportato da ES2018 in poi); non ha il flag x (verbose) per commenti nelle regex; supporta i named capture groups con (?<nome>...) da ES2018; non ha possessive quantifiers o atomic groups come PCRE/Python.
Sì. Il tool usa il motore RegExp nativo del browser (V8/SpiderMonkey). La sintassi è direttamente riutilizzabile in JavaScript e Node.js. Per PHP, Python o Java possono esserci piccole differenze su feature avanzate come lookbehind variabili o possessive quantifiers.
Le parentesi tonde creano un gruppo di cattura che estrae parti specifiche del match. Ad esempio (\d{4})-(\d{2})-(\d{2}) su "2025-01-15" cattura anno, mese e giorno come gruppi separati. Con named groups (?<anno>\d{4}) puoi accedere al gruppo per nome invece che per indice.
Sono asserzioni di posizione che non consumano caratteri. Il lookahead positivo (?=...) verifica che dopo il match ci sia un certo pattern senza includerlo. Il lookbehind positivo (?<=...) verifica il pattern precedente. Utili per matchare parole seguite o precedute da certi caratteri senza includerli nel risultato.
I caratteri speciali nelle regex devono essere preceduti da backslash per essere trattati come letterali: \. per un punto, \( per una parentesi, \+ per il più, \\ per un backslash. Senza escape il punto matcha qualsiasi carattere e le parentesi creano gruppi di cattura.