Der Martin: quotemeta() mit JavaScript un-quote

Beitrag lesen

Hi,

die Perl-Funktion quotemeta() setzt ein escape auf bestimmte Sequenzen, zb. CR, CRLF u.a., d.h., die Sequenzen bekommen einen Backslash vorangestellt.

meinst du eine Funktion, die ein "echtes" \n in die zwei Zeichen Backslash, Kleinbuchstabe 'n' umwandelt?

So escaped betanke ich übers Template ein Objekt im DOM. JS jedoch scheint den Backslash zu ignorieren

Woraus schließt du das? Wenn du den String "Heute back ich\nMorgen brau ich" tatsächlich mit der Zeichenfolge Backslash, Kleinbuchstabe 'n' im Javascript-Kontext an den Client schickst, wird Javascript dort auch einen Zeilenumbruch (CR, 0x0D oder \n) erkennen.

meine bisherigen Versuche, einen maskierten CR per JS.replace() zurückzuholen, greifen leider nicht.

Nein, weil zu der Zeit, wo dein Javascript ausgeführt wird, kein maskiertes Zeichen mehr existiert (außer im Quellcode), sondern ein echter Zeilenumbruch.

Als Workaround habe ich eine eigene Sequenz für den CR eingebaut, das ist jedoch unschön.

Mir scheint, du versuchst ein Problem zu lösen, das gar nicht existiert.

Schöner wäre eine JS-Funktion, die das Escaping einfach wieder rückgängig macht, gibt es sowas?

Ja, das macht der Browser von ganz allein beim Parsen des empfangenen Quellcodes.

So long,
 Martin

PS: Der Beitrag wäre im Themenbereich JAVASCRIPT passender angesiedelt als in PERL.

--
Die letzten Worte des Polizisten:
Ich hab mitgezählt, Leute: Sechs Schuss, jetzt hat er keine Munition mehr!
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(