從字符串中特定位置刪除字符你好,
我正在創建一個腳本來從字符串中刪除字符,同時忽略字符串中前面的相同字符。
例如,在數據表中,我有一個特殊的日期時間 YY/MM/DD/hh:mm,並且希望刪除第三個 /(即字符 9)。

感謝您的任何幫助,
盧克
高級統計建模自動化和腳本編寫大規模定制質量和工藝工程視窗回复:從字符串中特定位置刪除字符可能只是列引用的一些簡單錯誤。
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,新列將不會是數字連續的)
回复:從字符串中特定位置刪除字符你好克雷格,我已經嘗試過,但在嘗試使用它時似乎出現錯誤:

當我嘗試使用數據創建新列時,我可能理解不正確:

另外很抱歉,由於某種原因,我無法將 JLS 腳本發送到所需的屏幕截圖
回复:從字符串中特定位置刪除字符有很多方法。 如果字符串的長度始終相同,等等,我可能會使用公式列
Left( DateTime, 8 ) || "T" || Right( DateTime, 5 );
您可能需要一個像 T 這樣的分隔符,它由一種國際格式 yyyy-mm-ddThh:mm 使用。
如果有一些變化,但可能總是第三個 /,我可能會在公式列中使用正則表達式
Regex( DateTime, "^(\d+/\d+/\d+)/(\d+:\d+)$", "\1T\2" );
^ 和 $ 將匹配錨定到日期時間字符串的開頭和結尾。 \d+ 匹配 1 個或多個數字。 括號構成組,並且用 \1T\2 引用這兩個組來構建結果值。