Tester Regex — JavaScript Tester di espressioni regolari online — Numio
Prova le espressioni regolari JavaScript online: evidenziazione delle partite in tempo reale, acquisizione di gruppi con nome, tutti i flag e un'anteprima di sostituzione. I modelli lenti si interrompono dopo 1 secondo.
Funziona nel browser · Senza registrazione
Riferimento rapido
.- Qualsiasi carattere tranne un’interruzione di riga (usa il flag s per includerla)
\d \w \s- Cifra, carattere di parola [A-Za-z0-9_], spazio bianco
\D \W \S- Non una cifra, non un carattere di parola, non uno spazio bianco
[abc] [^abc]- Uno tra a, b, c / qualsiasi carattere tranne a, b, c
[a-z]- Qualsiasi carattere da a a z
^ $- Inizio / fine dell’input (di ogni riga con il flag m)
\b- Confine di parola
* + ?- 0 o più, 1 o più, 0 oppure 1
{2,5}- Da 2 a 5 volte ({3} esattamente, {2,} almeno)
*? +?- Versioni non greedy: trovano il minor numero possibile di caratteri
(abc)- Gruppo di cattura
(?<name>abc)- Gruppo di cattura con nome
(?:abc)- Gruppo senza cattura
\1 \k<name>- Ripete la corrispondenza del gruppo 1 / del gruppo con nome
a|b- a oppure b
(?=a) (?!a)- Seguito da a / non seguito da a
(?<=a) (?<!a)- Preceduto da a / non preceduto da a
\p{L}- Qualsiasi lettera in qualsiasi lingua (richiede il flag u o v)
Usa il motore di espressioni regolari JavaScript (ECMAScript) del browser, quindi i risultati corrispondono al codice JavaScript. Altri motori, come PCRE, Python o Java, differiscono in alcuni aspetti della sintassi. La ricerca viene eseguita in un worker in background e si interrompe dopo 1 secondo per proteggere la pagina dal backtracking catastrofico.
Come si usa
- Inserisci un'espressione regolare e seleziona i flag necessari (g trova tutte le corrispondenze).
- Incolla il testo da testare; le corrispondenze vengono evidenziate ed elencate con il relativo indice e gruppi di acquisizione.
- Attiva Sostituisci per visualizzare in anteprima il risultato di String.replace con riferimenti $1 o $<name>.
Esempio
Espressione: (?<user>\w+)@(\w+)\.com flag: g Testo: alice@example.com, bob@test.com Corrispondenze: alice@example.com (user = alice, 2 = example), bob@test.com Sostituisci con $<user> at $2 → alice at example, bob at test
Dettagli e limiti
I pattern vengono eseguiti con il motore JavaScript RegExp integrato nel tuo browser, quindi lookbehind, gruppi denominati, escape delle proprietà Unicode e il flag d si comportano esattamente come nel tuo codice. Il flag v appare solo se il tuo browser lo supporta.
La corrispondenza avviene in un Web Worker sul tuo dispositivo; non viene caricato nulla. La sequenza viene interrotta dopo circa 1 secondo e vengono elencate al massimo 1.000 corrispondenze.
FAQ
Perché la mia espressione regolare trova solo una corrispondenza?
In JavaScript una regex senza il flag g (globale) si ferma alla prima corrispondenza. Seleziona g per trovare ogni corrispondenza; questo tester li elenca tutti.
Cos’è il backtracking catastrofico?
Alcuni modelli, come (a+)+$ o (.*)*, possono richiedere un tempo esponenziale sul testo che quasi corrisponde. Questo strumento esegue l'espressione regolare in un lavoratore separato e la interrompe dopo 1 secondo, quindi la pagina rimane reattiva e mostra invece un errore.
Una regex testata qui funzionerà in Python o PHP?
Spesso, ma non sempre. Questo tester utilizza il motore di JavaScript. Python, PHP (PCRE) e Java hanno caratteristiche e sintassi diverse per cose come gruppi con nome, lookbehind e flag, quindi ricontrolla i pattern che si basano su di essi.
Strumenti correlati
Riferimenti
Pagina aggiornata: