So ersetzen/fügen Sie Zeichen in doppelte Anführungszeichen einer Zeichenfolge einVerehrte Gäste,
Ich habe so eine Saite.
Wissen Sie, wie man Zeichen in doppelten Anführungszeichen einer Zeichenfolge ersetzt?
Zum Beispiel
0 " Y=" 1 " Id=" U33 "> ==> Standard1 " Y=" Standard2 " Id=" Standard3 ">
Aufrichtig
Erweiterte statistische ModellierungBetreff: So ersetzen/fügen Sie Zeichen in doppelte Anführungszeichen einer Zeichenfolge einWenn Sie das Start-Tag kennen (in diesem Fall „ak:Unit“), können Sie es verwenden XML analysieren() :
Names Default To Here( 1 );
ex = "\[<UNIT x="0" y="1" id="U33">]\";
Parse XML( ex,
On Element( "ak:Unit", Start Tag( xml = XML Attr() ) ),
);
xml << Remove( "" );
default 1 = "new X";
default 2 = "new Y";
default 3 = "new Id";
new vals = [=>];
new vals["X"] = default 1;
new vals["Y"] = default 2;
new vals["Id"] = default 3;
new string = "<UNIT>";
Write( new string )</UNIT></UNIT>
Betreff: So ersetzen/fügen Sie Zeichen in doppelte Anführungszeichen einer Zeichenfolge einIch denke, dass es ziemlich selten vorkommt, dass man zuerst Variablennamen zur Zeichenfolge hinzufügt und diese dann durch die Werte ersetzt, aber mit Eval Insert könnte man das machen.
Eine bessere Option wäre, diese Werte direkt dort hinzuzufügen. Das folgende Beispiel hat beide Optionen, fügt zuerst ¤Default1¤ usw. hinzu und ersetzt diese durch Verwendung von Eval Insert Into (siehe Skriptindex), als nächstes wird ein assoziatives Array verwendet. Das assoziative Array verwendet die Zeichenfolgen, die als Schlüssel ersetzt werden sollen, und Werte sind die neuen Werte (ich würde die zweite Option verwenden).
Names Default To Here(1);
str = "\[<UNIT x="0" y="1" id="U33">]\";
new_str = Substitute(str, "\!"0\!"", "\!"¤Default1¤\!"", "\!"1\!"", "\!"¤Default2¤\!"", "\!"U33\!"", "\!"¤Default3¤\!"");
Default1 = "test1";
Default2 = "test2";
Default3 = "test3";
Write("Eval Insert into: \!N");
Eval Insert Into(new_str, "¤");
Write(new_str);
Write("\!N\!NAssociative Array:\!N");
aa_replace = Associative Array();
aa_replace["\!"0\!""] = "\!"test1\!"";
aa_replace["\!"1\!""] = "\!"test2\!"";
aa_replace["\!"U33\!""] = "\!"test3\!"";
new_str2 = Substitute(str, aa_replace << get keys, aa_replace << get values);
write(new_str2);</UNIT>Betreff: So ersetzen/fügen Sie Zeichen in doppelte Anführungszeichen einer Zeichenfolge einHier ist ein Beispiel, bei dem das erste Element durch einen Variablenwert ersetzt wird
Names Default To Here(1);
str = "\[<UNIT x="__one__" y="1" id="U33">]\";
sub1 = "theSub1";
mySub = Substitute(str,expr(__one__), sub1, "Default2", "U33", "Default3");</UNIT>
Betreff: So ersetzen/fügen Sie Zeichen in doppelte Anführungszeichen einer Zeichenfolge einHabe es ! Vielen Dank
Betreff: So ersetzen/fügen Sie Zeichen in doppelte Anführungszeichen einer Zeichenfolge einHallo Jthi,
Es klappt!
Dieselbe Frage, aber dieses Mal wie könnte ich Zeichen in einer Zeichenfolge durch eine Variable ersetzen?
Zum Beispiel:
Default1, Default2 und Default3 sind jetzt Variablen und ihr Wert würde geändert
result = "\[<UNIT x="Default1" y="Default2" id="Default3">]\";</UNIT>
Betreff: So ersetzen/fügen Sie Zeichen in doppelte Anführungszeichen einer Zeichenfolge einAngesichts der Besonderheiten der Beispielzeichenfolge
Die eigentliche Funktion replacement() kann vereinfacht werden zu
Substitute(str, "0", "Default1", "1", "Default2", "U33", "Default3");
Betreff: So ersetzen/fügen Sie Zeichen in doppelte Anführungszeichen einer Zeichenfolge einErsetzen (oder Ersetzen in) ist eine Option. Denken Sie daran, das Escape-Zeichen für doppelte Anführungszeichen zu verwenden.
Names Default To Here(1);
str = "\[<UNIT x="0" y="1" id="U33">]\";
result = "\[<UNIT x="Default1" y="Default2" id="Default3">]\";
new_str = Substitute(str, "\!"0\!"", "\!"Default1\!"", "\!"1\!"", "\!"Default2\!"", "\!"U33\!"", "\!"Default3\!"");
result == new_str;</UNIT></UNIT>