添加前导字符的脚本(在本例中为前导零)让列对其自身进行操作的语法是什么?
这是我能想到的最好的办法,但它不起作用。
dt = current data table();
column(dt, "Architecture") << Set Each Value( Repeat("0",3-Length(Char("Architecture")))||Char("Architecture"));
Column Architecture 的值有 1、2、123、XXX 等。长度不是标准的。
想要一个将在表上运行并隐藏列以将长度标准化为 3 并添加任何前导零的脚本。
结果值为 001、002、123、XXX 等。
看到这个帖子,差不多就这样了。
https://community.jmp.com/t5/Discussions/How-to-represent-numeric-value-quot-1-quot-as-quot-001-quot/td-p/10972
回复:添加前导字符的脚本(在本例中为前导零)谢谢你们俩。该软件很棒,用户社区也更好!
回复:添加前导字符的脚本(在本例中为前导零)JSL 可以忽略列名称中的空格。但它不能原谅特殊字符。以下语句是对列的等效引用。
dt:Architecture Digest
column(dt, "Architecture Digest")<BR />
对于特殊字符,您可以使用柱子()或者:姓名()
// Column with special characters, ABC=DEF?
column(dt, "ABC=DEF?")
:Name("ABC=DEF?")回复:添加前导字符的脚本(在本例中为前导零)如果列名中有空格怎么办?
太感谢了!回复:添加前导字符的脚本(在本例中为前导零)你快到了。 使用范围字符(单个冒号)来确保 JSL 理解它是一个变量(即列),而不是字符串。
dt = Current Data Table();
dt:Architecture << Set Each Value(Repeat("0", 3 - Length(dt:Architecture)) || dt:Architecture);回复:添加前导字符的脚本(在本例中为前导零)您需要循环遍历每一行并应用更改:
Names Default To Here( 1 );
dt = Current Data Table();
For Each Row(
dt:Architecture = Repeat( "0", 3 - Length( Char( dt:Architecture ) ) ) ||
Char( dt:Architecture )
);