Preskoči na vsebino

Regex escape

Pobegnite znake s posebnim pomenom v regularnih izrazih, da se besedilo ujema dobesedno.

Vhod
Izhod

Regex escape

Regularni izraz obravnava znake kot . * + ? ^ $ { } ( ) | [ ] in \ kot navodila, ne kot dobesedni tekst. Prilepite ime datoteke, ceno, URL ali katero koli niz, ki vsebuje enega od teh znakov, in to orodje escape-uje vsak poseban znak z obratno poševnico, da se rezultat natančno ujema s tem besedilom — nič več, nič manj. Preklopite smer na unescape in se proces obrne: odstranite obratne poševnice iz vzorca, da obnovite prvotni niz.

Možnost narečja določa, kateri znaki morajo biti resnično escape-uti. JavaScript in PCRE si delita isti niz metaznakov, zato se vzorec, zgrajen za enega, obnaša enako v drugem. POSIX Basic Regular Expressions — privzeta nastavka za navaden grep in sed — so bolj omejeni: znaki + ? { } ( ) in | so tam navadni znaki dobesedno, ne metaznaki, zato se njihov escape preskoči namesto da se slijepo uporabi. Vključite možnost „Pobegnite tudi ločevalnik (/)“ kadar bo vzorec napisan med poševnicami, kot /vzorec/, da dobesedna / ne prekine vzorca predčasno.

Dve možnosti obravnavata vnos z več vrsticami. Možnost „Vsaka vrstica kot lastni vzorec“ ovije vsako vrstico s ^ in $, spremenjajoč seznam točnih nizov v vzorce, ki se ujemajo s celotnimi vrsticami — koristno za gradnjo seznamov dovoljenih ali blokiranih elementov vrstico za vrstico. Možnost „Združi vrstice v eno alternacijo“ ide dlje, kombinirajoč vsako vrstico v eno skupino (?:a|b|c) pripravljeno za neposredno vstavitev v regularni izraz. Unescape obrne oba procesa: razdeliti alternacijo nazaj v vrstice in odstraniti sidrne točke.

Vse se izvršava lokalno v vašem brskalniku. Besedilo in vzorci, ki jih prilepite — vključno z imeni datotek, žetoni ali potmi — se nikoli ne pošljejo nikamor; escape se izvršava v celoti na vaši napravi.

FAQ

Katere znake ta orodje escape-uje?
Metaznake regularnega izraza . * + ? ^ $ { } ( ) | [ ] in \. Natančno kateri od njih potrebujejo obratno poševnico, je odvisno od izbranega narečja — na primer, POSIX BRE obravnava znake + ? { } ( ) in | kot že dobesedne.
Kakšna je razlika med narečji JavaScript, PCRE in POSIX?
JavaScript in PCRE (regularni izraz združljiv s Perlom, uporabljen s strani številnih jezikov in orodij) si delita enako množico metaznakov za escape. POSIX tukaj pomeni Basic Regular Expression, privzeto nastavko za navaden grep in sed, kjer so znaki + ? { } ( ) in | navadni znaki, ne metaznaki — zato niso escape-uti.
Kaj daje možnost "Združi vrstice v eno alternacijo"?
Escape-uje vsako vrstico in jih kombinira v eno skupino kot (?:mačka|pes|ptica), pripravljeno za uporabo kot vzorec, ki se ujema s katerokoli vrstico. Preklopljena na unescape razdelimo vzorec v tej točni obliki nazaj v ločene vrstice.
Ali se unescape lahko kdaj ne uspe ali vrže napako?
Ne. Unescape le odstrani obratno poševnico, ki je neposredno pred priznanim posebnim znakom; katera koli druga sekvenca obratne poševnice ali slabo oblikovana alternacijska obvojna puščina je puščena točno kot je napisano namesto da vrže napako.
Je moje besedilo naloženo nekje?
Ne. Escape in unescape se izvršata v celoti v vašem brskalniku — nič, kar prilepite tukaj, se ne pošlje na strežnik.