尝试使用“\!N”作为 tmp 的分隔符而不是“”。
当您从 Excel 复制粘贴值时,分隔符很可能是某种行更改而不是“”。 我不确定您的可变图像来自哪里(JSL 调试器?),但它可能无法正确显示行更改?
编辑:同样取决于您的应用程序,有时您最好使用 Regex 将所有空格(或只是不同类型的行更改)替换为某些字符(我通常使用 ¤),然后使用 Words 拆分该字符。 我通常这样做,因为复制粘贴的值可能有各种奇怪的空白字符,仅在 \!N 上拆分是不够的。
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);
感谢您的友好解释和调试的好方法!
这是我第一次在 JSL 中学习正则表达式(Regex)。
非常感谢!
仅供参考,我为您提到的快照捕获了调试器工具。
各位,
让我问一个关于 Text Edit Box() 函数的问题
目标
将 Excel 值(特定序列号)复制并粘贴到文本编辑框中并对面板框进行排序(插入序列号)

我参考 JMP 社区中的示例创建了一些脚本,如下所示。
该脚本需要更新。
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>
顺便说一句,当我在文本编辑框中输入以下值时,提取的字符串似乎有分隔符“”,但它不能像我想的那样被分割。
我添加了一个简单的脚本来检查它是否拆分好,如下图所示,“str”可以拆分,但是“tmp”不能。
当我将值放入 excel 并将其与 Exact 函数进行比较时,两个值都相同,但似乎 JSL 将两个变量归类为不同的变量。
tmp =Eval(item_search_teb <<获取文本);
str = "MD5 MD6 MD7 MD8";
split_str = Words(str," ");
split_tmp = Words(tmp," ");

你能找出有什么区别并让我知道解决方案吗?
非常感谢!