Hoppa till innehåll

Regex escape

Escape tecken med särskild betydelse i reguljära uttryck så att text matchar ordagrant.

Inmatning
Utmatning

Regex escape

Ett reguljärt uttryck behandlar tecken som . * + ? ^ $ { } ( ) | [ ] och \ som instruktioner, inte som bokstavlig text. Klistra in ett filnamn, pris, URL eller vilken sträng som helst som innehåller något av dessa tecken, och det här verktyget escapar varje specialtecken med ett omvänt snedstreck så att resultatet matchar exakt den texten — inget mer, inget mindre. Byt riktning till unescape och processen vänds: ta bort omvända snedstreck från ett mönster för att återhämta den ursprungliga strängen.

Dialekt-alternativet avgör vilka tecken som verkligen behöver escapas. JavaScript och PCRE delar samma uppsättning metatecken, så ett mönster byggt för en beter sig på samma sätt i den andra. POSIX Basic Regular Expressions — standarden för vanlig grep och sed — är smalare: + ? { } ( ) och | är vanliga bokstavliga tecken där, inte metatecken, så escaping av dem hoppas över snarare än tillämpas blindt. Slå på "Escape även avgränsare (/)" när mönstret kommer att skrivas mellan snedstreck, som /mönster/, så att ett bokstavligt / inte avslutar mönstret för tidigt.

Två alternativ hanterar flertalsradsinmatning. "Varje rad som sitt eget mönster" lindrar varje rad med ^ och $, vilket omvandlar en lista exakta strängar till mönster som matchar hela rader — praktiskt för att bygga tillåtelse- eller blocklistor rad för rad. "Förena rader till en alternation" går längre och kombinerar varje rad i en enda (?:a|b|c)-grupp redo att släppa direkt i en regex. Unescape vänder båda processerna: den delar upp en alternation tillbaka till rader och tar bort ankarna.

Allt körs lokalt i din webbläsare. Texten och mönstren som du klistrar in — inklusive filnamn, tokens eller sökvägar — skickas aldrig någonstans; escaping sker helt på din enhet.

FAQ

Vilka tecken escapar det här verktyget?
Regex-metatecknen . * + ? ^ $ { } ( ) | [ ] och \. Exakt vilka av dem som behöver ett omvänt snedstreck beror på vilket dialekt du väljer — POSIX BRE behandlar till exempel + ? { } ( ) och | som redan bokstavliga.
Vad är skillnaden mellan dialekterna JavaScript, PCRE och POSIX?
JavaScript och PCRE (Perl-kompatibla reguljära uttryck, används av många språk och verktyg) delar samma uppsättning metatecken för escaping. POSIX betyder här ett Basic Regular Expression, standarden för vanlig grep och sed, där + ? { } ( ) och | är vanliga tecken snarare än metatecken — så de escapas inte.
Vad producerar "Förena rader till en alternation"?
Det escapar varje rad och kombinerar dem i en enda grupp som (?:katt|hund|fågel), redo att användas som ett mönster som matchar någon av raderna. Att byta till unescape delar upp ett mönster i den exakta formen tillbaka till separata rader.
Kan unescape någonsin misslyckas eller kasta ett fel?
Nej. Unescape tar bara bort ett omvänt snedstreck som sitter direkt före ett erkänt specialtecken; någon annan omvänd snedstreckssekvens eller ett felaktigt formaterad alternation-omslag lämnas exakt som det är skrivit snarare än att kasta ett fel.
Laddas min text upp någonstans?
Nej. Escaping och unescape körs helt i din webbläsare — ingenting som du klistrar in här skickas till en server.