Punti salienti
- 01Il tester utilizza il motore RegExp nativo di JavaScript del tuo browser, quindi i risultati corrispondono esattamente a quello che Node.js o un browser moderno produrranno in produzione.
- 02Tutti e sei i flag di JavaScript (g, i, m, s, y, u) sono disponibili singolarmente.
- 03I template di sostituzione supportano $1, $2, $&, e $$ per anteprime di sostituzione potenti.
- 04Nulla viene inviato a un server — i pattern e le stringhe di test rimangono interamente nel tuo browser.
Perché un tester regex dedicato batte il tuo IDE
Le espressioni regolari sono potenti ma notoriamente difficili da leggere a prima vista. Anche gli sviluppatori esperti si imbattono in sorprese: un punto che inghiotte le interruzioni di riga, un quantificatore greedy che consuma troppo, o un gruppo di cattura che è fuori di uno. Un tester dedicato elimina il codice circostante in modo che tu possa iterare solo sul pattern e sulla stringa di input contemporaneamente.
Il tester regex di Handytool valuta i pattern con il motore RegExp nativo del browser ECMAScript, il che significa che non c'è nessun livello di traduzione e nessuna mancata corrispondenza di flavor. Se il tester dice che corrisponde, il tuo codice JavaScript farà lo stesso. Attiva i flag, incolla una nuova stringa di esempio, e i risultati si aggiornano istantaneamente — nessun pulsante di esecuzione richiesto.
Come testare un pattern regex
L'intero flusso di lavoro richiede meno di un minuto.
- 01
Incolla o digita il tuo pattern
Inserisci la tua espressione regolare nel campo pattern. Ometti le barre circostanti — i flag vengono impostati separatamente.
- 02
Imposta i tuoi flag
Attiva g, i, m, s, y, e u singolarmente. Il flag globale è quasi sempre necessario per i casi d'uso multi-corrispondenza.
- 03
Incolla la tua stringa di test
Aggiungi il testo che desideri far corrispondere. Ogni pressione di tasto riesegue il pattern e evidenzia le corrispondenze nell'input.
- 04
Ispeziona i gruppi di cattura
Scorri l'elenco delle corrispondenze per vedere la posizione di ogni corrispondenza e il valore di ogni gruppo di cattura numerato.
- 05
Visualizza un'anteprima della sostituzione
Inserisci un template di sostituzione usando $1, $2, o $& per vedere l'output sostituito dal vivo — ottimo per convalidare una chiamata String.replace() prima di scriverla.
Checklist rapida per il debug di regex
Prima di assumere un bug, esamina questi punti:
- 01Il flag globale è abilitato se ti aspetti più di una corrispondenza?
- 02I punti dovrebbero corrispondere alle nuove righe? Abilita il flag s se è così.
- 03Stai usando gruppi numerati ($1, $2) o gruppi denominati (\k<name>) nella sostituzione?
- 04Il pattern utilizza escape Unicode (\p{…})? Richiede il flag u.
- 05Il flag sticky (y) ha bisogno di un lastIndex fresco per ogni corrispondenza?
Privato per design
Il tester regex non effettua alcuna richiesta di rete quando digiti. Il tuo pattern e la stringa di test vengono elaborati interamente dal motore JavaScript del browser — non toccano mai un server. Questo lo rende sicuro per incollare righe di log proprietarie, payload API interni, o stringhe sensibili durante il debug.
Poiché non c'è nessun backend coinvolto, non c'è nemmeno limite di velocità, nessun account richiesto, e nessuna restrizione sulla dimensione dell'incolla oltre a quello che la tua scheda del browser può gestire. La maggior parte dei pattern e delle stringhe di tutti i giorni vengono valutati in meno di un millisecondo.
Domande frequenti sul tester regex
Quale flavor di regex utilizza questo tester?
JavaScript (ECMAScript). I pattern vengono valutati dal motore RegExp nativo del browser, corrispondendo esattamente al comportamento di Node.js e dei browser moderni. I lookbehind, i gruppi denominati, e gli escape di proprietà Unicode (\p{…} con il flag u) sono tutti supportati.
Il mio pattern o la stringa di test lasciano la pagina?
No. Tutto viene eseguito localmente nel tuo browser — nessuna richiesta di rete viene effettuata quando digiti un pattern, cambi i flag, o visualizzi un'anteprima di sostituzione.
Come utilizzo i gruppi di cattura nel campo di sostituzione?
Usa $1, $2, … per i gruppi numerati, $& per l'intera corrispondenza, e $$ per inserire un segno di dollaro letterale. L'anteprima si aggiorna dal vivo mentre cambi il pattern o il template.
Funziona per i pattern Python o PCRE?
Il motore è JavaScript, quindi la maggior parte dei pattern di base si comporta in modo identico, ma i gruppi denominati in stile Python (?P<name>…) e i quantificatori possessivi non sono supportati. Usa gli equivalenti JS — (?<name>…) per i gruppi denominati.
Perché il mio regex non corrisponde tra interruzioni di riga?
Abilita il flag s (dot-all), oppure sostituisci . con [\s\S]. Senza di esso, il punto corrisponde a qualsiasi carattere tranne la nuova riga.