从字符串中删除特定位置的字符你好,
我希望创建一个脚本来从字符串中删除一个字符,同时忽略字符串中较早的相同字符。
例如,从数据表中我有一个特殊的日期时间 YY/MM/DD/hh:mm 并希望删除第三个 /(即字符 9)。

感谢您的任何帮助,
卢克
分析数据表脚本编写视窗回复:从字符串中删除特定位置的字符有很多方法。 如果字符串总是相同的长度等,我可能会使用一个公式列
Left( DateTime, 8 ) || "T" || Right( DateTime, 5 );
您可能需要一个像 T 这样的分隔符,它被一种国际格式 yyyy-mm-ddThh:mm 使用。
如果有一些变化,但可能总是第三个 /,我可能会在公式列中使用正则表达式
Regex( DateTime, "^(\d+/\d+/\d+)/(\d+:\d+)$", "\1T\2" );
^ 和 $ 将匹配锚定到 DateTime 字符串的开头和结尾。 \d+ 匹配 1 个或多个数字。 括号组成组,这两个组用\1T\2 引用来构建结果值。
回复:从字符串中删除特定位置的字符您好 Craige,我已经尝试过,但在尝试使用它时似乎遇到了错误:

当我试图用数据创建一个新列时,我可能会错误地理解它:

也很抱歉,由于某种原因,我无法将 JLS 脚本作为 JLS 脚本发送到所需的屏幕截图
回复:从特定位置的字符串中删除字符可能只是列引用的一些简单错误。
Names Default To Here(1);
dt = New Table("Untitled 5",
Add Rows(3),
New Column("DateTime", Character, "Nominal", Set Values({"21/10/24/15:21", "21/10/24/14:21", "20/09/20/15:20"}))
);
/*
other solutions
a = "21/10/24/15:21";
//other solution with Regex
Show(Regex(a, "^(.{8})(.)(.*)$", "\1 \3"));
//using Words and Concat Items
Show(Concat Items(Words(a, "/")[1 :: 3], "/") || " " || Word(4, a, "/"));
//Using Contains to get last "/" and then Substr()
lastIdx = Contains(a, "/", -1);
Substr(a, 1, lastIdx - 1) || " " || Substr(a, lastIdx + 1);
*/
dt << New Column("Compatible DateTime", Formula(Left(:DateTime, 8)</img> || " " || Right(:DateTime, 5)));(请注意,如果没有一些额外的 jsl,新列将不会是数字连续的)