Hallo,
Ich versuche, das folgende Skript auszuführen. Wenn ich versuche, eine Zeichenfolge zu analysieren, die @ hat, bekomme ich eine Fehlermeldung (siehe Protokoll unten).
dt= data table ("RECIPE");
col={"COL_RECIPE@112345@X*HELLO", "COL_RECIPE@78902@X*GET"};
If( Contains( col[1], "COL_RECIPE@112345@X*HELLO" ),
dt<< New Column ("NEW_RECIPE",
Character,
);
text="Column(\!"NEW_RECIPE\!")<< Formula(:" || col[1] || ");";
Eval(Parse(text));
);
Fehlerprotokoll:
Unerwartetes "@. Vielleicht fehlt ein ," oder ")".
Versuch, Argumente der Funktion "Formula" zu parsen.
Zeile 1 Spalte 43: ... E ") << Formel (: COL_RECIPE► @ 112345 @ X * HELLO); ...
Vielen Dank für Ihre großartige Unterstützung.
JMP wird verwirrt, da der Spaltenname "@ und *" enthält. Dieser Code wird funktionieren:
dt = Open( "$sample_data\Big Class.jmp" );
col = {"COL_RECIPE@112345@X*HELLO", "COL_RECIPE@78902@X*GET"};
If( Contains( col[1], "COL_RECIPE@112345@X*HELLO" ),
dt << New Column( "NEW_RECIPE", Character, );
text = evalinsert("\[Column(dt, "NEW_RECIPE")<< Formula(:name("^col[1]^"));]\");
Eval( Parse( text ) );
);