ESC

Tester di Espressioni Regolari

/ / g

Pattern Rapidi

Statistiche

Corrispondenze Totali 0
Gruppi 0
Tempo di Esecuzione 0ms
Tutta l'elaborazione regex avviene nel tuo browser. Nessun dato viene inviato a nessun server.

0

Corrispondenze Totali

0

Gruppi

0ms

Tempo di Esecuzione

Esempi di Utilizzo

Validazione Email

Valida ed estrai indirizzi email dal testo usando pattern regex.

/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g
Estrazione URL

Trova ed estrai URL da qualsiasi contenuto testuale usando espressioni regolari.

/https?:\/\/[\w\-]+(\.[\w\-]+)+/g
Analisi Numeri di Telefono

Analizza e valida numeri di telefono in vari formati internazionali.

/\+?\d{1,4}[-.\s]?\(?\d{1,3}\)?[-.\s]?\d{1,4}/g

Funzionalita

Evidenziazione Corrispondenze

Evidenziazione visiva di tutte le corrispondenze nel testo di test

Flag Regex

Supporto per flag globale, ignora maiuscole, multilinea e dotAll

Pattern Rapidi

Pattern precostruiti per casi d'uso comuni come email, URL, telefono

Dettagli Gruppi

Visualizza gruppi di cattura e gruppi con nome per ogni corrispondenza

Statistiche

Conteggio corrispondenze, conteggio gruppi e metriche tempo di esecuzione

Test in Tempo Reale

I risultati si aggiornano automaticamente mentre digiti

Gestione Errori

Messaggi di errore chiari per pattern regex non validi

Privacy

Tutta l'elaborazione nel browser, nessun dato inviato

Come Usare?

1

Inserisci Pattern

Digita il tuo pattern di espressione regolare nel campo di input.

2

Imposta i Flag

Scegli i flag appropriati: globale, ignora maiuscole, multilinea, dotAll.

3

Inserisci Testo di Test

Incolla o digita il testo che vuoi testare con il tuo pattern regex.

4

Visualizza Risultati

Vedi le corrispondenze evidenziate e le informazioni dettagliate inclusi i gruppi.

5

Usa Pattern Rapidi

Prova pattern precostruiti per attivita comuni come validazione email o URL.

Domande Frequenti

Una espressione regolare è una sequenza di caratteri che definisce un modello di ricerca. Puoi usarla per trovare testo che corrisponde a un modello, validare che un input sia conforme a un formato, estrarre parti specifiche di una stringa o sostituire porzioni di testo. Esempi: /\d{4}-\d{2}-\d{2}/ corrisponde a date nel formato AAAA-MM-GG; /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/ valida gli indirizzi email; /https?:\/\/[^\s]+/g trova tutti gli URL in un blocco di testo. Regex è supportato nativamente in JavaScript, Python, PHP, Ruby, Java, Go e praticamente ogni altro linguaggio di programmazione.

g (global): trova tutte le corrispondenze, non solo la prima. Senza g, la regex restituisce solo la prima corrispondenza. i (case insensitive): "hello" corrisponde a "Hello", "HELLO", "hElLo". m (multiline): ^ e $ corrispondono all'inizio/fine di ogni riga invece che all'intera stringa. Senza m, ^ corrisponde solo all'inizio dell'input. s (dotAll / single-line): il punto . normalmente corrisponde a qualsiasi carattere tranne la nuova riga — con s, corrisponde anche alle nuove righe. Questo strumento è basato su JavaScript, quindi le flags disponibili sono quelle supportate dall'implementazione RegExp di JavaScript.

Gruppi di cattura numerati: le parentesi () nel tuo modello catturano il testo corrispondente che puoi fare riferimento tramite indice: $1, $2, ecc. Ad esempio, (\d{4})-(\d{2})-(\d{2}) su "2026-03-15" cattura l'anno come gruppo 1, il mese come gruppo 2, il giorno come gruppo 3. Gruppi di cattura nominati: (?<name>pattern) assegna un'etichetta a un gruppo, rendendolo accessibile come match.groups.name in JavaScript. Esempio: (?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2}). I gruppi nominati sono più leggibili e non si rompono quando aggiungi gruppi altrove nel modello. Gruppi non catturanti (?:pattern) raggruppano senza catturare, utili quando hai bisogno di raggruppamento per alternanza (a|b) ma non della corrispondenza.

Le cause più comuni: (1) Manca la flag g — senza di essa, viene trovata solo la prima corrispondenza e il contatore mostra 1 quando ti aspetteresti di più. (2) Caratteri speciali non sfuggiti (unescaped) — in regex, . corrisponde a qualsiasi carattere ma \. corrisponde a un punto letterale. Allo stesso modo \( \) per le parentesi, \[ \] per le parentesi quadre. (3) Ancore errate — ^ e $ senza la flag m corrispondono all'inizio/fine dell'intera stringa, non per riga. (4) Avidità dei quantificatori — .* corrisponde a quanto più possibile, consumando spesso ciò che volevi catturare. Usa .*? per la modalità non avida. (5) Il modello richiede più input di quelli forniti — esegui un rapido controllo di sanità con un sottomodello più semplice.

Il catastrophic backtracking si verifica quando una regex con quantificatori annidati causa una complessità temporale esponenziale su determinati input. L'esempio classico: (a+)+ applicato a "aaaaaab" — il motore prova ogni possibile modo di dividere le 'a' tra i gruppi annidati prima di fallire, causando il blocco del modello. Puoi attivare questo nel tester per vederlo. Prevenzione: evita quantificatori annidati su modelli sovrapposti, usa quantificatori possessivi o gruppi atomici dove supportati, e sii specifico su cosa corrisponde ogni parte. Se vedi il tester diventare non responsivo, il tuo modello probabilmente ha un catastrophic backtracking — aggiorna la pagina e semplifica il modello.

Lookaheads e lookbehinds corrispondono a una posizione basata su ciò che precede o segue, senza includere quel contesto nella corrispondenza. Positive lookahead (?=...): \w+(?=@) corrisponde alla parola prima di un @ senza includere @. Negative lookahead (?!...): \d+(?!\.\d) corrisponde a un numero non seguito da un decimale. Positive lookbehind (?<=...): (?<=\$)\d+ corrisponde ai numeri preceduti da $. Negative lookbehind (?<!...): (?<!\d)\d+ corrisponde ai numeri non preceduti da un numero. JavaScript supporta tutti e quattro dalla versione ES2018, inclusi i lookbehind a lunghezza variabile nei browser moderni.

Sì. Questo strumento utilizza il motore RegExp integrato di JavaScript, quindi tutti i modelli e le flags sono specifici di JavaScript. Il formato JavaScript corrisponde da vicino alle espressioni regolari compatibili con Perl (PCRE) ma presenta alcune differenze: nessun quantificatore possessivo (sintassi a++), lookbehind limitato (lookbehind a lunghezza variabile aggiunto in ES2018) e una diversa gestione dell'Unicode. Se stai scrivendo regex per Python, tieni presente che Python usa \A e \Z invece di ^ e $ per le ancore della stringa, e le raw strings (r"pattern") evitano il doppio escape. Per le regex PHP (PCRE) o Java, i modelli sono ampiamente compatibili con JavaScript ma controlla la sintassi dei delimitatori e delle flag.

No. Tutte le corrispondenze regex vengono eseguite nel tuo browser utilizzando il motore RegExp nativo di JavaScript. I tuoi modelli e le stringhe di test non lasciano mai il tuo dispositivo.

Tester e Debugger Regex Online

Regex e quella cosa che tutti googlano ogni singola volta. Incolla il tuo pattern, incolla il testo e vedi le corrispondenze evidenziate all'istante. Niente piu indovinare se il pattern e giusto - lo vedrai in tempo reale.

Corrispondenza Pattern con Espressioni Regolari

Debuggare regex senza feedback decente e una sofferenza. Questo tester ti mostra gruppi di cattura, posizioni dei match e statistiche di esecuzione per capire esattamente perche il tuo pattern non cattura quello che ti aspetti.

Pattern Regex Rapidi per Attivita Comuni

Non ricordi il pattern per validare un'email? O come matchare un URL? Clicca sui pattern rapidi e carica regex comuni per email, URL, telefoni, IP e date con un clic. Ti risparmi un giro su Stack Overflow.

Sicurezza e Privacy

La sicurezza dei vostri dati è la nostra priorità

Elaborazione Locale

Tutta l'elaborazione avviene nel vostro browser

Nessun Trasferimento Dati

I vostri dati non vengono inviati ai nostri server

Nessun Archiviazione Dati

Nessun dato viene memorizzato o condiviso

Crittografia SSL

Crittografia SSL per connessione sicura

Passo Successivo

Anche su MoreOnlineTools