Alle tools

Regex-tester

Reguliere expressies matchen tekst met patronen voor validatie, zoeken-vervangen en log-parseren. Test patronen met live markering voordat je ze in de productiecode plaatst - vermijd catastrofale verrassingen bij het terugdraaien van gebruikersinvoer.
Patroon
Flags
Testtekst
Uitvoer
[0] Hello [6] world [12] 123

Zo test je een regex

1. Voer het regex-patroon in (zonder buitenste schuine strepen of met vlaggen).
2. Vlaggen instellen: g globaal, i hoofdlettergevoelig, m meerdere regels.
3. Plak de voorbeeldtekst in het testreeksgebied.
4. Bekijk overeenkomsten, leg groepen vast en vervang het voorbeeld indien beschikbaar.

Regex-voorbeelden

E-mailachtige validatie

^[\w.-]+@[\w.-]+\.\w+$ vangt eenvoudige e-mails op — niet RFC-perfect, maar handig voor formulieren.

Extraheer ISO-datums

\d{4}-\d{2}-\d{2} vindt 2024-03-15 in logregels voor grep-vervanging.

Slug helper

Vervang [^a-z0-9]+ door een koppelteken voor de URL-slug uit de titelreeks.

Wanneer gebruik je deze tool

Bij het valideren van gestructureerde strings (telefoonnummer, postcode).
Bij het parseren van semi-gestructureerde logboeken.
Bij het leren van groepen vastleggen en vooruitkijken.

Wanneer kies je iets anders

Gebruik bij het parseren van HTML of JSON de juiste parsers.
Wanneer regex onleesbaar wordt: opgesplitst in codelogica.
Wanneer ReDoS risico loopt op door de gebruiker geleverde patronen op de server: time-out en limietlengte.

ReDoS-bewustzijn

Geneste kwantificatoren zoals (a+)+ bij kwaadaardige strings hangen CPJe - vermijd gebruikersregex op de server of gebruik veilige zoekmachines met time-outs.

Valideren versus extraheren

Verankerd patroon ^...$ valideert de hele string; niet-verankerd vindt overal een subtekenreeks.

Vervangen in editors

VS Code gebruikt vergelijkbare JS-regex in find-replace - test hier en plak het patroon.

Veelgestelde vragen

Welke regex-smaak?

JavaScript RegExp - Er bestaan ​​PCRE-verschillen (lookbehind-ondersteuning varieert per engineversie).

Mondiale vlag g?

Vindt alle overeenkomsten, niet alleen eerst: testStateful met lastIndex in JS.

Ontsnappen aan speciale karakters?

. * + ? [ ] ( ) { } | \ ^ $ moet ontsnappen voor een letterlijke match.

Groepen vastleggen?

Haakjes ( ) creëren genummerde groepen die toegankelijk zijn ter vervanging van $1 $2.

Lokaal?

Ja.

Meerdere regels ^ $?

m vlag zorgt ervoor dat ^ $ overeenkomt met de lijngrenzen en niet met de hele reeks.