Adding/Removing 来自字符串 kdb

Adding/Removing from String kdb

我正在做一些与 kdb 有关的工作,并且一直在修补字符串和变量。我只是想知道是否可以删除字符串的一部分并添加一些内容来结束它。

s1:"Hello"  s2:" World"

我有一个联合字符串 "Hello World" 是我使用

创建的
s3:s1,s2

我试图删除 Hello 并在联合字符串中的 World 之后添加一些内容。

s3[1*til 6] = Hello

这允许我 select 字符串的 Hello 部分,如果这有帮助的话

您可以使用 drop (_) 删除 "Hello" 并使用 join (,) 添加您想要的内容。像

q)6_s3,"star Hiphop"
"Worldstar Hiphop"

如果您不想计算第一个单词中的字母,您可以使用来自标量 (vs) 的向量来获取已登记单词的列表并对其进行索引,然后加入该列表:

q)(" " vs s3)[1],"star Hiphop"
"Worldstar Hiphop"

希望对您有所帮助。

字符串是字符列表,所以 drop 函数 _ 仍然适用于它们。例如 1_"Hello" 将 return ello

因此,如果您想从字符串 s3 中删除 "Hello",您可以使用

q)5_s3
"World"

在其末尾添加内容需要连接运算符 ,,例如

q)s:"HelloWorld"
q)s1:"Mr. "
q)s2:5_s
q)s3:"wide"
q)s1,s2,s3
"Mr. Worldwide"

您可以使用 ssr 功能(字符串搜索替换)。

q)s3:"HelloWorld"

q)ssr[s3;"Hello";""], " of War"
"World of War"