Regex testers

Test reguliere expressies tegen tekst en zie alle overeenkomsten gemarkeerd. Essentieel voor ontwikkelaars die werken met patroonherkenning, gegevensvalidatie of tekstverwerking. Debug en verfijn je regexpatronen in realtime met visuele feedback die precies laat zien wat je expressie overeenkomt.

Veelgestelde vragen

Een reguliere expressie is een reeks tekens die een zoekpatroon definieert. Regex wordt gebruikt voor het vinden, matchen en manipuleren van tekst op basis van patronen in plaats van exacte tekenreeksen. Het is ongelooflijk krachtig voor taken zoals het valideren van e-mailadressen, het extraheren van gegevens uit tekst, find-and-replace operaties en het parsen van logbestanden.

Voer je regexpatroon in het patroonveld in en plak je testtekst in het tekstgebied. Het hulpprogramma markeert alle overeenkomsten in real-time en laat je precies zien wat je patroon vastlegt. Als er niets oplicht, komt je patroon niet overeen. Gebruik deze visuele feedback om je patroon te verfijnen tot het precies overeenkomt met wat je nodig hebt.

De meest voorkomende vlaggen zijn: 'g' (global) vindt alle overeenkomsten in plaats van alleen de eerste, 'i' (case-insensitive) negeert verschillen tussen hoofdletters en kleine letters, 'm' (multiline) zorgt ervoor dat ^ en $ overeenkomen met begin/eind van regels in plaats van alleen met begin/eind van een string, en 's' (dotall) zorgt ervoor dat . overeenkomt met newline-tekens. Combineer vlaggen zoals 'gi' voor globaal hoofdletter-ongevoelig overeenkomen.

Voor e-mail: probeer /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$/ voor basisvalidatie. Voor URL's: /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/ works for most cases. Merk op dat perfecte e-mail/URL validatie extreem complex is - deze patronen behandelen de meest voorkomende gevallen.

De punt (.) komt overeen met elk teken. Het sterretje (*) betekent 'nul of meer keer', terwijl plus (+) 'één of meer keer' betekent. Dus .* komt overeen met nul of meer van elk teken (inclusief niets overeenkomend), terwijl .+ ten minste één teken vereist om overeen te komen. Bijvoorbeeld, 'a.*b' komt overeen met 'ab' of 'a123b', maar 'a.+b' komt alleen overeen met 'a123b'.

Standaard zijn kwantoren zoals *, + en {n,m} hebzuchtig - ze komen zoveel mogelijk overeen. Voeg een vraagteken (?) toe na de kwantor om deze niet-gretig (lui) te maken en zo weinig mogelijk te laten overeenkomen. In de tekst '<div>hello</div><div>world</div>' bijvoorbeeld, komt /<div>.*<\/div>/ overeen met de hele tekenreeks (gretig), terwijl /<div>.*?<\/div>/ overeenkomt met elke tag afzonderlijk (niet-gretig).

Capturing groepen gebruiken haakjes () om specifieke delen van een overeenkomst te extraheren. Bijvoorbeeld, /user-(\d+)/ vangt de numerieke gebruikers-ID op. De vastgelegde waarde is toegankelijk in de meeste talen die overeenkomende groepen gebruiken. Gebruik (?:...) voor niet-capturing groepen als je groepering nodig hebt voor kwantoren maar niet de waarde wilt vastleggen.

Plak voorbeeldlogboekvermeldingen in het teststringgebied en maak patronen om tijdstempels, IP-adressen, statuscodes of foutmeldingen te extraheren. Visuele markering laat precies zien wat overeenkomt, zodat je patronen kunt verfijnen voordat je ze inzet in loganalysehulpmiddelen zoals Logstash, Splunk of aangepaste scripts.

Lookaheads (?=...) en lookbehinds (?<=...) bevestigen dat een patroon voor of achter bestaat zonder het in de overeenkomst op te nemen. Bijvoorbeeld, /\d+(?= dollars)/ komt overeen met getallen gevolgd door ' dollars' maar neemt alleen het getal op. Negatieve lookaheads (?!...) en negatieve lookbehinds (?<!...) bevestigen dat het patroon NIET bestaat.

Ja! Test regexpatronen voor formuliervalidatie zoals telefoonnummers, postcodes, creditcards of aangepaste formaten. De visuele feedback helpt je ervoor te zorgen dat je validatiepatronen geldige invoer correct accepteren en ongeldige invoer weigeren voordat je ze in je applicatie implementeert.