Le espressioni regolari (regex) sono pattern potenti per trovare, abbinare ed estrarre testo. Sono usate nella programmazione, nella validazione dei dati, nelle operazioni di ricerca e sostituzione e nell'analisi dei log. La sfida è che la sintassi regex può essere difficile da azzeccare. Il nostro Tester Regex gratuito ti permette di sperimentare in tempo reale così puoi vedere esattamente cosa il tuo pattern trova.
Cosa ti serve
- Un pattern che vuoi testare, o un problema di matching del testo da risolvere
- Un browser web (Chrome, Firefox, Safari o Edge)
- Nessun account né installazione necessari
Guida passo dopo passo
Apri il Tester Regex
Vai allo strumento Tester Regex. Vedrai due aree principali: una per il tuo pattern di espressione regolare e una per il testo di test con cui vuoi verificare le corrispondenze.
Scrivi il tuo pattern regex
Inserisci un'espressione regolare nel campo del pattern. Inizia in modo semplice e aumenta la complessità. Ad esempio, inizia con una parola letterale come hello per trovare quel testo esatto, poi raffina il tuo pattern con caratteri speciali per trovare pattern più ampi.
Inserisci il testo di test
Incolla o digita del testo di esempio nell'area di test. Includi esempi che dovrebbero corrispondere ed esempi che non dovrebbero. Lo strumento evidenzia tutte le corrispondenze in tempo reale mentre digiti, così puoi vedere immediatamente se il tuo pattern funziona correttamente.
Raffina e verifica
Modifica il pattern e osserva le corrispondenze aggiornarsi istantaneamente. Aggiungi casi limite al testo di test — input insoliti, condizioni al contorno e formati complicati — per assicurarti che il tuo regex li gestisca correttamente. Quando sei soddisfatto, copia il pattern nel tuo codice o strumento.
Buono a sapersi Il Tester Regex funziona interamente nel tuo browser. Nessun dato viene inviato a nessun server, quindi puoi testare in sicurezza i pattern su testi sensibili come indirizzi email, file di log o dati personali.
Sintassi regex essenziale
| Simbolo | Significato | Esempio |
|---|---|---|
. |
Qualsiasi singolo carattere | h.t trova "hat", "hit", "hot" |
* |
Zero o più del precedente | ab*c trova "ac", "abc", "abbc" |
+ |
Uno o più del precedente | ab+c trova "abc", "abbc" ma non "ac" |
? |
Zero o uno del precedente | colou?r trova "color" e "colour" |
\d |
Qualsiasi cifra (0-9) | \d{3} trova "123", "456" |
\w |
Qualsiasi carattere di parola | \w+ trova "hello", "test123" |
\s |
Qualsiasi spazio bianco | hello\sworld trova "hello world" |
^ |
Inizio della stringa | ^Hello trova "Hello world" |
$ |
Fine della stringa | world$ trova "Hello world" |
[abc] |
Qualsiasi carattere nell'insieme | [aeiou] trova qualsiasi vocale |
(...) |
Gruppo di cattura | (ab)+ trova "ab", "abab" |
Pattern comuni da provare
Copia questi pattern nel Tester Regex e sperimenta con essi.
Indirizzo email
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}
Trova formati email standard come user@example.com e first.last@company.co.uk. Testalo con formati email sia validi che non validi per vedere come gestisce i casi limite.
URL
https?://[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}(/[^\s]*)?
Trova URL HTTP e HTTPS come https://example.com e http://site.org/path/page. Il s? rende opzionale la "s" in "https".
Numero di telefono (formato US)
(\+1[-.\s]?)?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}
Trova vari formati di telefono US: (555) 123-4567, 555-123-4567, +1 555.123.4567 e variazioni simili.
Consiglio Quando costruisci un regex, inizia con il pattern più semplice che trova il testo desiderato e poi aggiungi vincoli uno alla volta. Tentare di scrivere un regex complesso tutto in una volta è molto più difficile che costruirlo incrementalmente osservando le corrispondenze aggiornarsi in tempo reale.
Errori comuni e come evitarli
Dimenticare di fare l'escape dei caratteri speciali. Caratteri come ., *, +, ?, (, ), [, ], {, } hanno un significato speciale nelle regex. Per trovarli letteralmente, precedili con un backslash: \. trova un punto, \( trova una parentesi.
Essere troppo golosi. Per impostazione predefinita, * e + trovano quanto più testo possibile. Se vuoi la corrispondenza più corta, aggiungi ? dopo di essi: .*? trova il meno possibile.
Non ancorare il pattern. Senza ^ e $, un pattern come \d{3} troverà qualsiasi tre cifre consecutive ovunque nella stringa, incluso all'interno di numeri più lunghi. Usa le ancore quando devi far corrispondere l'intera stringa.
Importante La sintassi regex varia leggermente tra linguaggi di programmazione e strumenti. Un pattern che funziona in JavaScript potrebbe comportarsi diversamente in Python o PHP. Testa sempre il tuo pattern finale nel linguaggio o nell'ambiente dove lo utilizzerai.
Domande frequenti
Cosa sono i flag regex?
I flag modificano come viene applicato il pattern. I flag comuni includono g (globale — trova tutte le corrispondenze, non solo la prima), i (non sensibile alle maiuscole) e m (multilinea — ^ e $ trovano i confini delle righe, non solo i confini della stringa). Il Tester Regex ti permette di attivare questi flag.
Posso usare le regex per cercare e sostituire?
Sì. La maggior parte degli editor di testo e dei linguaggi di programmazione supporta la ricerca e sostituzione basata su regex. I gruppi di cattura (...) ti permettono di fare riferimento al testo trovato nella stringa di sostituzione.
Come posso trovare corrispondenze su più righe?
Usa il flag s (dotall) per far sì che . trovi i caratteri di nuova riga, oppure usa [\s\S] come alternativa cross-platform che trova qualsiasi carattere inclusi i ritorni a capo.
Prossimi passi
Ora che sai costruire e testare pattern regex, prova a usarli nel tuo codice, editor di testo o strumenti da riga di comando. Per altre utilità per sviluppatori, dai un'occhiata al Parser Cron per le espressioni di pianificazione o al Formattatore JSON per lavorare con dati strutturati.