Vai al contenuto

Tester Regex

Testa regex in tempo reale con evidenziazione delle corrispondenze e gruppi di cattura. Debugger regex online gratuito, funziona nel browser.

Flag
Mode
Anteprima
Risultati
Inserisci un pattern regex qui sopra.
Quick regex reference
PatternDescription
.Any character (except newline)
^Start of string / line
$End of string / line
*0 or more repetitions
+1 or more repetitions
?0 or 1 (optional)
{n}Exactly n repetitions
{n,m}Between n and m repetitions
\dDigit [0-9]
\DNon-digit
\wWord character [a-zA-Z0-9_]
\WNon-word character
\sWhitespace
\SNon-whitespace
\bWord boundary
[abc]Class: a, b, or c
[^abc]Negation: not a, b, or c
(abc)Capturing group
(?:abc)Non-capturing group
(?<n>abc)Named group "n"
a|bAlternative: a or b

Cos'è un'espressione regolare?

Un'espressione regolare (regex) è una sequenza di caratteri che definisce un pattern di ricerca. Le regex sono usate praticamente in ogni linguaggio di programmazione e strumento — dalla validazione dei form in JavaScript al parsing dei log in Python fino al cerca-e-sostituisci negli editor di testo. Un pattern combina caratteri letterali, metacaratteri (. ^ $ * + ? { } [ ] | ( )) e classi di caratteri (\d cifra, \w carattere di parola, \s spazio). Questo strumento utilizza il motore regex ECMAScript (lo stesso usato in JavaScript, TypeScript e Node.js).

Flag regex spiegate

gglobale: trova tutte le corrispondenze, non solo la prima. Essenziale per contare le occorrenze o sostituire ogni istanza.
iignora maiuscole: abbina lettere maiuscole e minuscole indistintamente. /hello/i corrisponde a "Hello", "HELLO" e "hello".
mmultiriga: ^ e $ corrispondono all'inizio e alla fine di ogni riga, non solo dell'intera stringa. Fondamentale per il parsing dei log riga per riga.
sdotAll: il metacarattere . corrisponde anche ai caratteri di nuova riga. Senza questo flag, . si ferma agli a capo.

Gruppi di cattura

I gruppi di cattura (pattern) catturano la sottostringa corrispondente per estrazione o riferimento. I gruppi con nome (?<nome>pattern) assegnano un nome leggibile alla cattura, accessibile tramite match.groups.nome — molto più chiaro dei gruppi numerati nei pattern complessi. I gruppi non catturanti (?:pattern) raggruppano senza catturare — utili per applicare quantificatori a una sequenza senza creare una cattura non necessaria. I riferimenti come $1, $2 nelle stringhe di sostituzione si riferiscono al testo catturato per numero di gruppo.

Privacy

Tutta l'elaborazione avviene 100% nel tuo browser. Nessun dato viene inviato a un server.