Tester di Regex - Prova un’Espressione Regolare dal Vivo
Tester di espressioni regolari
Flag
Usa $1, $2 per i gruppi e $& per l’intera corrispondenza.
| # | Posizione | Corrispondenza | Gruppi |
|---|
Questo tester usa il motore JavaScript del tuo browser, quindi il dialetto è ECMAScript. I pattern scritti per PCRE, Python o .NET possono comportarsi diversamente, soprattutto con lookbehind, gruppi atomici, quantificatori possessivi ed escape di proprietà unicode.
Cosa fa questo tester di regex
Un’espressione regolare è facile da scrivere e difficile da garantire. Questa pagina mostra cosa ha davvero trovato il tuo pattern nel tuo testo, quali gruppi ha catturato e cosa produrrebbe la sostituzione, prima che quel pattern si avvicini ai dati di produzione.
Come si usa
- 1 Scrivi il pattern tra le barre e spunta i flag che ti servono.
- 2 Incolla sotto del testo reale, più è disordinato meglio è, e premi Esegui.
- 3 Leggi la vista evidenziata per un controllo veloce, la tabella per i gruppi catturati e aggiungi una sostituzione per vedere l’anteprima della riscrittura.
Perché il pattern gira in un worker separato
Alcuni pattern esplodono. Un quantificatore annidato come (a+)+$ può costringere il motore a tentare un numero astronomico di percorsi su una stringa quasi corrispondente, e un’espressione regolare già in esecuzione non si può interrompere dalla pagina che l’ha avviata. Eseguirla in un worker permette di terminarla dopo due secondi, così un pattern sbagliato ti costa un messaggio e non una scheda bloccata.
Riferimento rapido
| \d | una cifra |
| \w | una lettera, cifra o trattino basso |
| \s | qualsiasi spazio bianco |
| . | qualsiasi carattere tranne l’a capo |
| ^ $ | inizio e fine del testo |
| * + ? | zero o più, uno o più, zero o uno |
| {2,5} | tra due e cinque volte |
| (...) | un gruppo di cattura, richiamato con $1 |
| (?<ad>…) | gruppo con nome, più leggibile nei pattern lunghi |
| [a-z] | un carattere qualsiasi dell’insieme |
| a|b | o la parte sinistra o la destra |
| \b | un confine di parola, non consuma alcun carattere |
Il dialetto conta
Un pattern che funziona qui può fallire nel tuo codice server e viceversa. JavaScript, PCRE, Python e .NET differiscono in ciò che supportano e a volte nel significato della stessa sintassi. Prova nel dialetto in cui rilascerai, e considera questa pagina il posto giusto per tutto ciò che girerà in un browser.
È nei gruppi che si nasconde la maggior parte degli errori
La corrispondenza spesso è giusta mentre le catture sono sbagliate: un gruppo è facoltativo e torna indefinito, oppure due gruppi si scambiano perché una parentesi si è spostata. La tabella mostra ogni gruppo di ogni corrispondenza affiancato, il modo più veloce per accorgersi che $2 non è ciò che pensavi.
Nulla di ciò che scrivi viene inviato altrove
Il testo di prova è raramente inventato. Si incollano righe di log, schede clienti e riferimenti di pagamento per vedere se il pattern li prende. Sia il pattern sia il testo restano nella pagina, quindi provare su dati reali non significa consegnarli a qualcuno.