從字符串中刪除特定位置的字符你好,
我希望創建一個腳本來從字符串中刪除一個字符,同時忽略字符串中較早的相同字符。
例如,從數據表中我有一個特殊的日期時間 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,新列將不會是數字連續的)