Wie kann man Ersatz für Escape-Sequenzen in Anführungszeichen verwenden?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Wie ersetze ich eine "Escape-Sequenz" in einer doppelten Anführungszeichenfolge? Das Problem, das ich habe, ist, dass JMP immer die "Escape-Sequenz" auswerten und mir nicht seine wörtliche Charakterdarstellung geben möchte:
Quellstring:
myStr = "C: \ temp \ myfile.csv";
Was ich möchte:
myStr = "C: \! \ temp \! \ myfile.csv";
Die folgenden Methoden funktionieren nicht oder werden zumindest nicht angezeigt, wenn ich sie im Protokollfenster überprüfe (ich frage mich, ob mein Problem möglicherweise das Protokollfenster immer auswertet?):
myStr = Ersetzen (myStr, "\", "\! \"); ==> funktioniert nicht, da es "\! \" auswertet und es wieder in ein "\" verwandelt.
myStr = Substitute (myStr, "\", "\" || "!" || "\"); ==> funktioniert nicht, da es dies erneut auswertet und im Wesentlichen doppelt "\! \" enthält
Irgendwelche Ideen? --dj
Re: Wie kann man Ersatz für Escape-Sequenzen in Anführungszeichen verwenden?Um zu vermeiden, dass Zeichen mit Escapezeichen ausgewertet werden, muss die Flucht selbst irgendwie entgangen sein.
Sie haben recht, die Protokollausgabe kann verwirrend sein. Führen Sie diesen Code aus und vergleichen Sie, wie das Protokoll und das Fenster die Zeichenfolgen darstellen:
myStr = "C: \ temp \ myfile.csv" ;
newStr1 = Ersatz ( myStr . "\" . "\! \" ) ;
newStr2 = Ersatz ( myStr . "\" . "\ [\! \] \" ) ; // "Flucht vor der Flucht" "
// Das Protokoll wertet Strings aus. newStr2 sieht im Protokoll wegen der "Escape-Flucht" komisch aus
Show ( newStr1 . newStr2 ) ;
// In einem anderen Kontext zeigt newStr2 jedoch einen echten Wert, oder nicht?
nw = Neues Fenster ( "myStr" . String Col Box ( "neue Saiten" . { newStr1 . newStr2 } ) ) ;
Re: Wie kann man Ersatz für Escape-Sequenzen in Anführungszeichen verwenden?Ich kann das nicht testen, da ich kein JMP habe, aber ich würde einen zweistufigen Ansatz versuchen:
myStr = Ersetzen (myStr, "\", "\! \");
myStr = Substitute (myStr, "!", '!');
Viel Glück.