Merkkijonon escape-työkalu

Escape tai Unescape merkkijonot 8 muodolle: HTML, XML, JavaScript, Java, .Net (C#), JSON, CSV ja SQL.
Kaikki käsittely tapahtuu paikallisesti selaimessa — dataa ei lähetetä koskaan millekään palvelimelle.
Muoto:
Suunta:
⚠ Turvallisuusvaroitus: merkkijonojen escapointi ei ole korvike parametrisoiduille kyselyille. Pelkkä escapointi EI estä SQL-injektiota. Käytä tuotantokoodissa aina parametrisoituja kyselyjä (valmisteltuja lauseita).
Käyttöohje: Valitse muoto ja suunta (Escape / Unescape), kirjoita tai liitä teksti — tulos päivittyy automaattisesti. Napsauta Käsittele käynnistääkseen muunnoksen käsin.
JSON-, JavaScript-, Java- ja .Net-tiloissa valitse Escape kaikki ei-ASCII-merkit muuntaakseen merkit, kuten kiinan, muotoon \uXXXX.
Unescape kääntää escapoinnin: < muuttuu muotoon <, \n rivinvaihdoksi jne.
HTML: Escape muuntaa & < > " ' HTML-entiteeteiksi (& < > " '). Käytä tätä, kun upotat käyttäjän luomaa tekstiä HTML:ään XSS-hyökkäysten estämiseksi.
Unescape muuntaa HTML-entiteetit (& < > " ') takaisin alkuperäisiksi merkeikseen. Käyttää selaimen omaa HTML-jäsenninta kaikkien nimettyjen ja numeeristen entiteettien luotettavaan dekoodaukseen.
XML: Escape muuntaa samat 5 merkkiä kuin HTML (& < > " ') XML-turvallisiksi entiteeteiksi. XML vaatii, että kaikki &-merkit escapoidaan, myös attribuuttiarvoissa.
Unescape muuntaa XML-entiteetit takaisin alkuperäisiksi merkeikseen. Käsittelee 5 ennalta määritettyä XML-entiteettiä sekä numeeriset merkkiviittaukset. Sama logiikka kuin HTML-unescapessa.
JavaScript: Escape muuntaa erikoismerkit JavaScript-escape-sekvensseiksi: \n \t \\ \" \' \xHH \uHHHH \u{H...}. Käytä tätä, kun luot JavaScript-merkkijonoliteraaleja dynaamisesti.
Unescape muuntaa JavaScript-escape-sekvenssit (\n \t \xHH \uHHHH jne.) takaisin kirjaimellisiksi merkeiksi. Käsittelee kaikki vakio-ECMAScript-escape-sekvenssit, mukaan lukien \u{H...}-koodipistescapet.
JSON: Escape muuntaa \" \\ ja ohjausmerkit JSON-turvallisiksi escape-sekvensseiksi RFC 8259:n mukaan. Käytä tätä, kun upotat tekstiä JSON-merkkijonoarvoihin.
Unescape muuntaa JSON-escape-sekvenssit (\" \\ \n \uXXXX jne.) takaisin kirjaimellisiksi merkeiksi. Noudattaa RFC 8259:ää: dekoodataan vain kelvolliset JSON-escape-sekvenssit.
CSV: Escape RFC 4180 -muodossa: kääri kentät kaksoislainausmerkkeihin, jos ne sisältävät pilkkuja, kaksoislainausmerkkejä tai rivinvaihtoja. Sisäiset kaksoislainausmerkit kaksinkertaistetaan (" → "").
Unescape kääntää RFC 4180 -CSV-escapoinnin: poistaa ulommat kaksoislainausmerkit ja kaksinkertaistaa sisäiset lainausmerkit takaisin ("" → "). Käsittelee oikein monirivisiä kenttiä ja lainattuja pilkkuja.
SQL: Escape escapoi heittomerkit kaksinkertaistamalla ne (' → ''), mikä toimii kaikissa suurissa tietokannoissa (MySQL, PostgreSQL, SQL Server, SQLite). Tämä käsittelee vain merkkijonoliteraalien escapoinnin — se ei suojaa SQL-injektiolta dynaamisissa kyselyissä.
Unescape muuntaa kaksinkertaistetut heittomerkit ('' → ') takaisin yksinkertaisiksi heittomerkeiksi. Kääntää vakio-SQL-merkkijonoliteraalien escapoinnin.
Java: Escape muuntaa erikoismerkit Java-escape-sekvensseiksi: \n \t \r \\ \" \' \uXXXX jne. Käytä tätä, kun luot Java-merkkijonoliteraaleja.
Unescape muuntaa Java-escape-sekvenssit takaisin kirjaimellisiksi merkeiksi. Käsittelee kaikki vakio-Java-escape-sekvenssit, mukaan lukien \uXXXX-Unicode-escapet.
.Net (C#): Escape muuntaa erikoismerkit C#-escape-sekvensseiksi: \n \t \r \a \v \0 \\ \" \uXXXX \UHHHHHHHH jne. Käytä tätä, kun luot C#-merkkijonoliteraaleja.
Unescape muuntaa C#-escape-sekvenssit takaisin kirjaimellisiksi merkeiksi. Käsittelee kaikki vakio-C#-sekvenssit, mukaan lukien \UHHHHHHHH UTF-32 ja vaihtuvanpituiset \xHH... heksa-escapet.
Escapointi riippuu kontekstista

Sama teksti tarvitsee eri escapeja sen mukaan, minne se päätyy: HTML-runko tarvitsee < & >, kaksoislainausmerkeissä oleva attribuutti lisäksi ", JavaScript-merkkijono kenoviiva-escapet ja URL prosenttikoodauksen. Väärään kontekstiin escapointi on tapa, jolla merkintäkielen injektio ja XSS tapahtuvat.

Peukalosääntö: escapoi kohteen mukaan, ei lähteen mukaan — päätä sen perusteella, minne data on menossa, ei siitä, mistä se tuli.