Trennzeichenfolge, die mit Words() direkt aus der Datentabelle kopiert wurdeUm ein Skript zu verwenden, an dem ich gerade arbeite, muss ich eine Reihe von Zellen aus einer Datentabellenspalte (mehrere Zeilen, eine Spalte) kopieren und in ein Textbearbeitungsfeld einfügen (dieser Schritt wird vom Benutzer ausgeführt) und Innerhalb des Skripts möchte ich diesen Satz von Zeichenzellen in einem einzelnen Zeichenfolgenobjekt speichern und diese Zeichenfolge mithilfe der Funktion „Words()“ in einzelne Zeichenfolgen aufteilen. Wenn ich jedoch zum Einfügen direkt aus der Datentabelle in die Zwischenablage kopiere, scheint das resultierende Objekt bei der Konvertierung in eine Zeichenfolge die Zellinhalte weder durch ein Leerzeichen „“ noch durch ein Zeilenumbruchzeichen „\!n“ zu trennen. was sich bei der effektiven Verwendung der Words()-Funktion zur Trennung als problematisch erweisen würde. Ein solcher Satz von Zellen, die direkt aus einer Datentabelle in das Textfeld kopiert werden, würde beispielsweise so aussehen:

Und mein Code im Skript, um dieses festgelegte String-Objekt in mehrere Strings umzuwandeln, sieht derzeit so aus:

Wie würde ich das erreichen? Vielen Dank an alle.
Erweiterte statistische ModellierungAutomatisierung und SkripterstellungInhaltsorganisationDatenmischung und -bereinigungVersuchsplanungMassenanpassungQualitäts- und VerfahrenstechnikErgebnisse teilen und kommunizierenBetreff: Trennzeichenfolge, die mit Words() direkt aus der Datentabelle kopiert wurdeWählen die Benutzer Zeilen in der Tabelle aus?Wenn ja, liefert dieser Code eine Liste, ohne dass etwas analysiert werden muss.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
// Mimic the user selecting some rows
dt << select where (:name == "KATIE" | :name == "JANE" | :name == "JOE");
user_rows = dt << get selected rows();
if (nrows(user_rows) > 0,
name_list = dt:name[user_rows];
show(name_list);
);Betreff: Trennzeichenfolge, die mit Words() direkt aus der Datentabelle kopiert wurdeIch würde vorschlagen, alle Variablen mit Show() in das JMP-Protokoll zu drucken, um zu sehen, was schief geht. Auch Kasse Escape-Sequenzen für Zeichenfolgen in Anführungszeichen , in den meisten Fällen sollte \!N ausreichen
Betreff: Trennzeichenfolge, die mit Words() direkt aus der Datentabelle kopiert wurdeIch habe validiert @jthi Erkenntnisse in JMP 15.Die Variable „teb_values“ enthält den Text aus der Text Edit Box(), mit einem Wagenrücklauf „0D“ und einem Zeilenvorschubzeichen „0A“ zwischen jeder Zeile.
Ich verwende ein Windows 10-System.
Betreff: Trennzeichenfolge, die mit Words() direkt aus der Datentabelle kopiert wurdeHallo jthi,
Danke dafür. Ich verwende JMP 15, also ist die Version vielleicht ein Problem? Wie würde ich außerdem ein Trägerrücklauf- oder Zeilenvorschubzeichen in etwas wie der Words()-Funktion angeben? Danke nochmal.
Betreff: Direkt aus der Datentabelle kopierte Zeichenfolge mit Words() trennenSie scheinen \!n statt \!N zu haben.
Bei mir scheint es mit diesem Beispiel (unter Windows und JMP16) gut zu funktionieren.


Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
nw = New Window("a",
teb = Text Edit Box("", << Set N Lines(20))
);
//paste values to teb...
//get values
teb_values = teb << get text;
teb_as_list = Words(teb_values, "\!N");
Show(teb_as_list);
//{"KATIE", "LOUISE", "JANE", "JACLYN", "LILLIE", "TIM", "JAMES", "ROBERT", "BARBARA",
//"ALICE", "SUSAN", "JOHN", "JOE", "MICHAEL"}Auch beim Kopieren und Einfügen aus der JMP-Datentabelle nach Notepad++ mit aktivierter Option „Alle Zeichen anzeigen“ scheinen CR (Carrier Return) und LF (Line Feed) am Ende der Zeile/Linie hinzugefügt zu werden:
