Ugrás a tartalomhoz

Regex escape

Escape-olja a reguláris kifejezésekben különleges jelentéssel bíró karaktereket, hogy a szöveg szó szerint illeszkedjen.

Bemenet
Kimenet

Regex escape

A reguláris kifejezés a karaktereket, például . * + ? ^ $ { } ( ) | [ ] és \ utasításokként kezeli, nem szó szerinti szövegként. Illessz be egy fájlnevet, árat, URL-t vagy bármelyik karaktert tartalmazó sztringet, és ez az eszköz minden szpeciális karaktert fordított perjellel escape-ol, hogy az eredmény pontosan illeszkedjen az adott szöveghez — semmi több, semmi kevesebb. Váltsd az irányt unescape-re, és a folyamat megfordul: távolítsd el a fordított perjeleket a mintából az eredeti sztring helyreállításához.

A dialektus beállítás határozza meg, mely karaktereket kell valóban escape-olni. A JavaScript és PCRE ugyanazt a metakaraktereket osztják meg, így az egyikhez készült minta ugyanúgy viselkedik a másikban. A POSIX Basic Regular Expressions — az alapértelmezett a közönséges grep és sed számára — szűkebb: a + ? { } ( ) és | karakterek ott közönséges szó szerinti karakterek, nem metakarakterek, így az escape-olásuk kihagyásra kerül az egyszerű alkalmazás helyett. Kapcsold be a „Fordított perjel (/) escape-olása is” lehetőséget, amikor a minta perjeleik között íródik, például /minta/, hogy a szó szerinti / ne szakítsa meg a mintát idő előtt.

Két lehetőség kezeli a többsoros bemenetet. Az „Minden sor saját mintaként” lehetőség minden sort ^ és $ karakterek közé vesz, szó szerinti sztringek listáját olyan mintákra alakítva, amelyek teljes soroknak felelnek meg — hasznos az engedélyezett vagy tiltott listák sor-sor építéséhez. A „Sorok összekapcsolása egy alternációba” lehetőség továbbjut, és minden sort egyetlen (?:a|b|c) csoportba kombinál, amely közvetlenül beszúrható a reguláris kifejezésbe. Az unescape mindkét folyamatot megfordítja: visszavágja az alternációt sorokra és eltávolítja a horgonyokat.

Minden lokálisan fut a böngészőben. Az ilesztett szöveg és minták — a fájlnevek, tokenek vagy útvonalak is — soha nem küldödnek sehova; az escape-olás teljes egészében az eszközödön történik.

Gyakori kérdések

Mely karaktereket escape-olja ez az eszköz?
A reguláris kifejezés metakaraktereit: . * + ? ^ $ { } ( ) | [ ] és \. Pontosan mely karakterek igényelnek fordított perjelet, az attól függ, mely dialektust választod — például a POSIX BRE a + ? { } ( ) és | karaktereket már szó szerintnek kezeli.
Mi a különbség a JavaScript, PCRE és POSIX dialektusok között?
A JavaScript és PCRE (Perl-kompatibilis reguláris kifejezés, amelyet sok nyelvben és eszközben használnak) ugyanazt a metakaraktereket osztják meg az escape-oláshoz. A POSIX itt Basic Regular Expression-t jelent, az alapértelmezett a közönséges grep és sed számára, ahol a + ? { } ( ) és | karakterek közönséges karakterek, nem metakarakterek — ezért nem escape-olódnak.
Mit produkál a "Sorok összekapcsolása egy alternációba" lehetőség?
Escape-olja az egyes sorokat és egyetlen csoportba kombinálva őket, például (?:macska|kutya|madár), amely közvetlenül használható egy mintaként, amely bármelyik sornak megfelel. Az unescape-re való átváltás az ebben a pontos formában levő mintát visszavágja az egyes sorokra.
Az unescape valaha meghibásodhat vagy hibát dobhat?
Nem. Az unescape csak egy fordított perjelet távolít el, amely közvetlenül egy felismert szpeciális karakter előtt helyezkedik el; bármely más fordított perjel sorozat vagy rosszul formázott alternáció burok pontosan úgy marad, ahogy írták, ahelyett, hogy hibát dobna.
Az én szövegemet valahova feltölti?
Nem. Az escape és unescape teljes egészében a böngészőben fut — semmi, amit ide illeszt, nem kerül a szerverre.