Regex-fusklapp och visualiserare
Lär dig symbolerna i reguljära uttryck snabbt, dela upp ett mönster i begripliga delar och testa det på din egen text. Allt körs i din webbläsare.
Fusklapp
. Vilket tecken som helst utom radbrytning Exempel: a.c\d En siffra (0-9) Exempel: \d+\D Vilket tecken som helst som inte är en siffra Exempel: \D+\w Ett ordtecken (a-z, A-Z, 0-9, _) Exempel: \w+\W Vilket tecken som helst som inte är ett ordtecken Exempel: \W+\s Ett blanktecken Exempel: \s+\S Vilket tecken som helst som inte är blanktecken Exempel: \S+^ Textens början Exempel: ^hello$ Textens slut Exempel: world$\b En ordgräns Exempel: \bword\b\B En position som inte är en ordgräns Exempel: \Bword\B[abc] Teckenmängd Exempel: [abc]+[^abc] Negerad teckenmängd Exempel: [^abc]+[a-z] Teckenmängd Exempel: [a-z0-9]+(abc) Fångstgrupp Exempel: (abc)(?:abc) Grupp utan fångst Exempel: (?:abc)+(?<n>) Namngiven grupp Exempel: (?<year>\d{4})\1 Bakåtreferens Exempel: (\w)\1a|b Alternativ Exempel: cat|dog? Valfritt (0 eller 1) Exempel: colou?r* Upprepar 0 eller flera gånger Exempel: a*+ Upprepar 1 eller flera gånger Exempel: a+{m,n} Upprepar ett bestämt antal gånger Exempel: a{2,4}+? Samma sak, men så kort som möjligt Exempel: <.+?>(?=) Bara om det följs av Exempel: foo(?=bar)(?!) Bara om det inte följs av Exempel: foo(?!bar)(?<=) Bara om det föregås av Exempel: (?<=\$)\d+(?<!) Bara om det inte föregås av Exempel: (?<!\$)\d+\. Behandlar nästa tecken bokstavligt Exempel: 3\.14\n En radbrytning Exempel: line\n\t En tabb Exempel: \tindentedVanliga valideringsmönster
| Användning | Mönster | Beskrivning | Matchar |
|---|---|---|---|
| E-postadress | ^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$ | Kontrollerar den vanliga formen på en e-postadress. | user@example.com |
| Telefonnummer (USA) | ^\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$ | Matchar tiosiffriga nummer med eller utan bindestreck, mellanslag eller parenteser. | 123-456-7890 |
| Postnummer (USA) | ^\d{5}(-\d{4})?$ | Matchar postnummer med fem och med nio siffror. | 90210-1234 |
| Datum (ÅÅÅÅ-MM-DD) | ^\d{4}-\d{2}-\d{2}$ | Matchar ett enkelt numeriskt datumformat. | 2026-09-16 |
| IP-adress (IPv4) | ^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$ | Matchar formen på en IPv4-adress, utan att kontrollera att varje del ligger mellan 0 och 255. | 192.168.1.1 |
De här mönstren kontrollerar formen på ett värde, inte om det finns. En adress kan matcha e-postmönstret perfekt och ändå studsa, så använd dem för att fånga skrivfel tidigt, aldrig som enda validering.
Vad verktyget ger dig
En kompakt referens över symbolerna i reguljära uttryck, en uppdelning som gör om mönstret till vanliga meningar, och en testare som visar vad mönstret matchar i din egen text.
När du har nytta av det
Använd det medan du skriver ett mönster, medan du läser någon annans mönster, eller medan du förklarar grunderna i regex för en kollega. Att läsa mönstret högt, bit för bit, är oftast det som får polletten att trilla ner.
Begränsningar
Uppdelningen följer JavaScripts reguljära uttryck, eftersom det är dem din webbläsare kör. Andra dialekter skiljer sig: PCRE, Python, Java och .NET lägger var och en till egen syntax, och POSIX-verktyg som grep och sed använder en äldre och mindre syntax. Testaren kör ditt mönster i en egen tråd och stoppar det efter några sekunder, så ett mönster som backar i all evighet kan inte frysa sidan.
Så använder du fusklappen
Sök efter en symbol, eller klistra in ett mönster och läs det en del i taget.
- Bläddra i eller sök bland symbolerna.
- Klistra in ett mönster för att se det uppdelat i delar.
- Skriv exempeltext för att se vad som faktiskt matchar, och justera sedan mönstret.
Vanliga frågor
Skickar det här verktyget mina mönster någonstans?
Nej. Både uppdelningen och matchningen körs i din webbläsare, och varken mönstret eller texten skickas någonstans.
Vilken regex-dialekt följer det?
JavaScripts, eftersom det är motorn som gör jobbet. Det mesta här — teckenklasser, grupper, kvantifierare, ankare — är detsamma i alla dialekter.
Kan jag testa mitt mönster här?
Ja. Skriv text i testrutan så markeras träffarna, med de fångade grupperna listade för var och en.
Varför stoppades mitt mönster?
Vissa mönster tar exponentiell tid på text som nästan matchar — en kvantifierare inuti en annan, som (a+)+b, är den vanliga orsaken. Testaren ger upp efter några sekunder i stället för att frysa sidan, och själva avbrottet är i sig en nyttig varning: samma mönster skulle sätta stopp för en server.
Wikipedia — Regular expression
Wikipedia — PCRE
Wikipedia — Finite-state machine
Wikipedia — ReDoS
Wikipedia — Backtracking