Testa le espressioni regolari con evidenziazione in tempo reale delle corrispondenze, validazione dei pattern e spiegazioni dei simboli regex comuni. Salva e riutilizza i tuoi pattern frequentemente usati con etichette personalizzate.
Inserisci un pattern e un testo di prova per vedere i risultati
Inserisci un pattern e un testo di prova per vedere i risultati
Nessun pattern salvato ancora
.
Corrisponde a qualsiasi carattere tranne la nuova riga\d
Corrisponde a qualsiasi cifra (0-9)\D
Corrisponde a qualsiasi non cifra\w
Corrisponde a qualsiasi carattere di parola (a-z, A-Z, 0-9, _)\W
Corrisponde a qualsiasi carattere non di parola\s
Corrisponde a qualsiasi carattere di spaziatura\S
Corrisponde a qualsiasi carattere non di spaziatura^
Corrisponde all'inizio della riga$
Corrisponde alla fine della riga*
Corrisponde a 0 o più del carattere precedente+
Corrisponde a 1 o più del carattere precedente?
Corrisponde a 0 o 1 del carattere precedente{n}
Corrisponde esattamente a n del carattere precedente{n,}
Corrisponde ad almeno n del carattere precedente{n,m}
Corrisponde tra n e m del carattere precedente[abc]
Corrisponde a uno qualsiasi dei caratteri tra le parentesi[^abc]
Corrisponde a qualsiasi carattere non presente tra le parentesi(abc)
Raggruppa più token insieme e cattura la corrispondenzaa|b
Corrisponde a a o b\b
Corrisponde a una posizione di confine di parolaUn tester di pattern per le espressioni regolari (regex) è uno strumento essenziale per sviluppatori, analisti di dati e chiunque lavori con l'elaborazione del testo. Questo validatore di pattern regex completo ti consente di creare, testare e affinare le espressioni regolari in tempo reale, fornendo un feedback visivo immediato sui match dei pattern. Che tu stia convalidando indirizzi email, analizzando file di log o estraendo dati specifici dal testo, il nostro tester regex rende il processo di sviluppo e debug più veloce e intuitivo.
Le espressioni regolari sono potenti sequenze di corrispondenza dei pattern che consentono ricerche, convalide e manipolazioni di testo sofisticate. Tuttavia, la loro sintassi può essere complessa e difficile da padroneggiare. Questo tester di pattern regex semplifica il processo evidenziando i match mentre digiti, convalidando la sintassi del pattern e permettendoti di salvare i pattern utilizzati frequentemente per riferimento futuro.
Utilizzare il nostro validatore di pattern regex è semplice e intuitivo. Segui questi passaggi per iniziare:
Inserisci un Pattern di Espressione Regolare: Digita il tuo pattern regex nel campo di input designato. Lo strumento convalida il tuo pattern in tempo reale, avvisandoti di eventuali errori di sintassi.
Seleziona i Flag Regex: Scegli i flag appropriati per il tuo pattern:
g
(Globale): Trova tutte le corrispondenze invece di fermarsi dopo la prima corrispondenzai
(Case Insensitive): Rendi il pattern insensibile al maiuscolo/minuscolom
(Multilinea): Fai sì che ^
e $
corrispondano all'inizio/fine di ogni rigaInserisci il Testo di Prova: Inserisci il testo che desideri testare contro il tuo pattern nell'area di testo di prova.
Visualizza i Risultati in Tempo Reale: Mentre digiti, lo strumento automaticamente:
Salva Pattern Utili: Per i pattern che utilizzi frequentemente:
Copia i Risultati: Usa il pulsante "Copia Corrispondenze" per copiare tutto il testo corrispondente negli appunti per utilizzarlo in altre applicazioni.
L'interfaccia è divisa in due pannelli principali: il pannello di input dove inserisci il tuo pattern e il testo di prova, e il pannello dei risultati che mostra le corrispondenze e le informazioni sul pattern.
Le espressioni regolari utilizzano caratteri e sequenze speciali per definire i pattern di ricerca. Ecco una guida ai simboli regex fondamentali supportati dal nostro strumento:
Simbolo | Descrizione | Esempio | Corrisponde |
---|---|---|---|
. | Corrisponde a qualsiasi carattere tranne la nuova linea | a.c | "abc", "adc", "a1c", ecc. |
\d | Corrisponde a qualsiasi cifra (0-9) | \d{3} | "123", "456", "789", ecc. |
\D | Corrisponde a qualsiasi non cifra | \D+ | "abc", "xyz", ecc. |
\w | Corrisponde a qualsiasi carattere di parola (a-z, A-Z, 0-9, _) | \w+ | "abc123", "test_123", ecc. |
\W | Corrisponde a qualsiasi carattere non parola | \W+ | "!@#", " + ", ecc. |
\s | Corrisponde a qualsiasi carattere di spazio bianco | a\sb | "a b", "a\tb", ecc. |
\S | Corrisponde a qualsiasi carattere non spazio bianco | \S+ | "abc", "123", ecc. |
Simbolo | Descrizione | Esempio | Corrisponde |
---|---|---|---|
^ | Corrisponde all'inizio della riga | ^abc | "abc" all'inizio di una riga |
$ | Corrisponde alla fine della riga | abc$ | "abc" alla fine di una riga |
\b | Corrisponde a un confine di parola | \bword\b | "word" come parola completa |
Simbolo | Descrizione | Esempio | Corrisponde |
---|---|---|---|
* | Corrisponde a 0 o più del carattere precedente | a*b | "b", "ab", "aab", ecc. |
+ | Corrisponde a 1 o più del carattere precedente | a+b | "ab", "aab", "aaab", ecc. |
? | Corrisponde a 0 o 1 del carattere precedente | colou?r | "color", "colour" |
{n} | Corrisponde esattamente a n del carattere precedente | a{3} | "aaa" |
{n,} | Corrisponde ad almeno n del carattere precedente | a{2,} | "aa", "aaa", "aaaa", ecc. |
{n,m} | Corrisponde tra n e m del carattere precedente | a{2,4} | "aa", "aaa", "aaaa" |
Simbolo | Descrizione | Esempio | Corrisponde |
---|---|---|---|
[abc] | Corrisponde a uno qualsiasi dei caratteri tra le parentesi | [aeiou] | "a", "e", "i", "o", "u" |
[^abc] | Corrisponde a qualsiasi carattere non presente tra le parentesi | [^aeiou] | Qualsiasi carattere tranne "a", "e", "i", "o", "u" |
[a-z] | Corrisponde a qualsiasi carattere nell'intervallo | [a-z] | Qualsiasi lettera minuscola |
Simbolo | Descrizione | Esempio | Corrisponde |
---|---|---|---|
(abc) | Raggruppa più token insieme e cattura il match | (abc)+ | "abc", "abcabc", ecc. |
a|b | Corrisponde a a o b | cat|dog | "cat", "dog" |
Una volta padroneggiati i concetti di base, puoi creare pattern più sofisticati per risolvere sfide complesse di elaborazione del testo:
1^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
2
Questo pattern convalida gli indirizzi email assicurandosi che seguano il formato standard: nomeutente@dominio.tld.
1^(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$
2
Questo pattern convalida gli URL, inclusi quelli con o senza il protocollo http/https.
1^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$
2
Questo pattern corrisponde ai numeri di telefono USA in vari formati: (123) 456-7890, 123-456-7890 o 1234567890.
1^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$
2
Questo pattern convalida le date nel formato YYYY-MM-DD, con una validazione di base per i range di mesi e giorni.
Le asserzioni lookahead e lookbehind ti consentono di abbinare pattern solo se sono seguiti o preceduti da un altro pattern:
a(?=b)
corrisponde a "a" solo se è seguito da "b"a(?!b)
corrisponde a "a" solo se non è seguito da "b"(?<=a)b
corrisponde a "b" solo se è preceduto da "a"(?<!a)b
corrisponde a "b" solo se non è preceduto da "a"Il nostro tester regex supporta vari flag che modificano il modo in cui i pattern vengono abbinati:
^
e $
corrispondano all'inizio/fine di ogni rigaLe espressioni regolari hanno numerose applicazioni pratiche in diversi campi:
Validazione dei Moduli: Assicurati che gli input degli utenti corrispondano ai formati richiesti:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$
^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$
Parsing HTML: Estrai elementi o attributi specifici:
<img[^>]+src="([^">]+)"
<a[^>]+href="([^">]+)"
Analisi dei File di Log: Estrai informazioni dalle voci di log:
\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b
\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}
ERROR: .*
Parsing CSV: Elabora valori separati da virgola con potenziali campi tra virgolette:
(?:^|,)(?:"([^"]*(?:""[^"]*)*)"|([^,]*))
Trova e Sostituisci: Identifica pattern per la sostituzione:
<[^>]*>
(\d{3})(\d{3})(\d{4})
→ ($1) $2-$3
Estrazione di Contenuti: Estrai informazioni specifiche da testo non strutturato:
\b(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+\d{1,2},\s+\d{4}\b
\$\d+(?:\.\d{2})?
Evidenziazione della Sintassi: Identifica le strutture del linguaggio:
\b(?:var|let|const)\s+([a-zA-Z_$][\w$]*)\b
function\s+([a-zA-Z_$][\w$]*)\s*\(
Refactoring del Codice: Trova pattern che necessitano di aggiornamenti:
\.oldMethod\(
eval\(
Il nostro tester di pattern regex include un sistema di gestione dei pattern che ti consente di salvare e riutilizzare le tue espressioni frequentemente utilizzate:
Considera di salvare i pattern che:
Quando salvi i pattern, utilizza etichette descrittive che:
Organizza i tuoi pattern salvati per:
Sebbene il nostro strumento non supporti direttamente la condivisione dei pattern tra utenti, puoi:
Anche gli sviluppatori esperti incontrano sfide con le espressioni regolari. Ecco soluzioni a problemi comuni:
Se il tuo pattern mostra un errore di convalida:
Se la tua regex è lenta o causa lag nel browser:
(a+)+
)Se il tuo pattern corrisponde a testo indesiderato:
^
e $
) per abbinare intere stringhe\b
) dove appropriatoSe il tuo pattern non corrisponde al testo atteso:
i
)Sebbene le regex siano potenti, non sono sempre la soluzione migliore per ogni compito di elaborazione del testo:
Per operazioni di testo semplici, i metodi di stringa nativi sono spesso più chiari ed efficienti:
String.indexOf()
per trovare sottostringheString.startsWith()
e String.endsWith()
per controllare i confini delle stringheString.split()
per una tokenizzazione di basePer formati di dati strutturati, i parser dedicati sono più robusti:
Per comprendere il significato del testo piuttosto che solo i pattern:
Considera alternative alle regex quando:
Un'espressione regolare (regex) è una sequenza di caratteri che definisce un pattern di ricerca. Questi pattern possono essere utilizzati per ricerche di stringhe, corrispondenze e operazioni di manipolazione del testo.
Un tester di pattern regex ti aiuta a sviluppare e debugare espressioni regolari fornendo un feedback visivo immediato sui match, convalidando la sintassi del pattern e permettendoti di sperimentare con diversi pattern e flag senza doverli implementare nel codice prima.
Per corrispondere a caratteri speciali letterali che normalmente hanno un significato speciale nelle regex, devi eseguirli con una barra rovesciata. Ad esempio, per corrispondere a un punto letterale, usa \.
invece di solo .
.
.*
e .*?
in un pattern regex?Il .*
è un quantificatore avido che corrisponde a quanti più caratteri possibile, mentre .*?
è un quantificatore pigro (non avido) che corrisponde a quanti meno caratteri possibile. Questa distinzione è importante quando desideri trovare il match più breve piuttosto che il più lungo.
Sebbene la sintassi regex di base sia simile tra molti linguaggi, ci sono sottili differenze nell'implementazione. Il nostro tester utilizza il motore regex di JavaScript, che è compatibile con molti linguaggi web ma potrebbe avere differenze rispetto alle regex in linguaggi come Python, Java o Perl.
Per convalidare che un'intera stringa corrisponda a un pattern, usa l'ancora ^
all'inizio e l'ancora $
alla fine della tua regex. Ad esempio, ^[0-9]+$
corrisponderà solo a stringhe che consistono interamente di cifre.
I gruppi di cattura, creati con le parentesi ()
, ti consentono di estrarre porzioni specifiche del testo corrispondente. Nel nostro tester, puoi vedere tutti i match, inclusi i gruppi catturati. Nei linguaggi di programmazione, puoi solitamente accedere a queste catture indicizzando il risultato del match.
Per migliorare l'efficienza delle regex: sii specifico con le classi di caratteri, evita gruppi di cattura non necessari (usa gruppi non catturanti (?:...)
quando possibile), limita l'uso di lookahead/lookbehind, e evita pattern di backtracking catastrofico come i quantificatori annidati.
Gli errori comuni includono: non eseguire caratteri speciali, creare pattern troppo avidi, dimenticare di ancorare i pattern (con ^
e $
), e scrivere espressioni eccessivamente complesse che sono difficili da mantenere.
Le espressioni regolari non sono adatte per analizzare strutture annidate come HTML o XML. Anche se puoi creare pattern regex per un abbinamento HTML semplice, è generalmente meglio utilizzare un parser HTML dedicato per l'elaborazione complessa dell'HTML.
Prova oggi il nostro tester di pattern regex per semplificare i tuoi compiti di elaborazione del testo, convalidare formati di input ed estrarre dati significativi da testo non strutturato. Che tu sia un principiante che impara le basi delle espressioni regolari o uno sviluppatore esperto che lavora su corrispondenze di pattern complesse, il nostro strumento fornisce le funzionalità di cui hai bisogno per creare, testare e affinare i tuoi pattern regex in modo efficiente.
Scopri più strumenti che potrebbero essere utili per il tuo flusso di lavoro