Versuchen Sie es mit "\!N" als Trennzeichen für tmp anstelle von " ".
Höchstwahrscheinlich ist das Trennzeichen eine Art Zeilenänderung und nicht " ", wenn Sie Werte aus Excel kopieren und einfügen. Ich bin mir nicht sicher, woher Ihr Variablenbild stammt (JSL-Debugger?), Aber vielleicht kann es Zeilenänderungen nicht richtig anzeigen?
Bearbeiten: Abhängig von Ihrer Anwendung ist es manchmal besser, alle Leerzeichen (oder nur verschiedene Arten von Zeilenänderungen) durch ein Zeichen (ich verwende normalerweise ¤) mit Regex zu ersetzen und dann Wörter zu verwenden, um dieses Zeichen zu teilen. Normalerweise mache ich das, weil die Copy-Paste-Werte alle möglichen seltsamen Leerzeichen enthalten können und es nicht ausreicht, nur auf \!N aufzuteilen.
Names Default To Here(1);
str = "asd b
\!na
\!rb";
Print(str);
new_separator = "¤";
l = Words(Regex(str, "\s", new_separator, GLOBALREPLACE), new_separator);
Show(l);
Vielen Dank für die freundliche Erklärung und den guten Weg für das Debugging!
Es ist das erste Mal, dass ich reguläre Ausdrücke (Regex) in JSL gelernt habe.
Danke vielmals!
Zu Ihrer Information, ich habe das Debugger-Tool für den Snapshot erfasst, wie Sie erwähnt haben.
Verehrte Gäste,
Lassen Sie mich eine Frage zur Funktion „Text Edit Box()“ stellen
Ziel
Kopieren Sie Excel-Werte (bestimmte Seriennummer) und fügen Sie sie in das Textbearbeitungsfeld ein und sortieren Sie das Panel-Feld (eingefügte Seriennummer).

Ich habe ein Skript erstellt, das sich auf Beispiele in der JMP-Community bezieht (siehe unten).
Das Skript muss jedoch aktualisiert werden.
Delete Symbols();
Names Default To Here( 1 );
//Define Seperate function
SeparateString = Function( {TheString},
TheList = Words(TheString," ");
Return( TheList );
);
dt = Current Data Table();
Summarize( sn = by( :SN ) );
serial_total = sn;
//dt2 = New table("tmp", New Column("serialnumber",character, set values(sn)));
New Window("Debug",
H List Box(
V List Box(TEXT BOX("Copy and Paste SerialNumber list", <<SET font="" style=""></SET>
Übrigens, wenn ich die folgenden Werte in das Textbearbeitungsfeld eingebe, scheint die extrahierte Zeichenfolge das Trennzeichen „“ zu haben, kann aber nicht wie gedacht aufgeteilt werden.
Ich habe ein einfaches Skript hinzugefügt, um zu überprüfen, ob es gut aufgeteilt ist. Wie Sie in der Abbildung unten sehen können, kann „str“ aufgeteilt werden, „tmp“ jedoch nicht.
Wenn ich die Werte in Excel eingebe und sie mit der Exact-Funktion vergleiche, sind beide Werte gleich, aber es scheint, als hätte JSL zwei Variablen als unterschiedliche Variablen klassifiziert.
tmp =Eval(item_search_teb < str = "MD5 MD6 MD7 MD8 ";
split_str = Words(str," ");
split_tmp = Wörter(tmp," ");

Könnten Sie herausfinden, was der Unterschied ist, und mir die Lösung mitteilen?
Vielen Dank!