1

例如,如果我有一个符号列表,即(`A.ABC;`B.DEF;`C.GHI)or (`A;`B;`C),我如何将列表中的每个项目转换为字符串?

4

5 回答 5

3

您可以使用此处记录的关键字字符串来执行此操作

q)lst:(`A;`B;`C)
// convert to list of strings
q)string lst
,"A"
,"B"
,"C"
于 2020-04-01T16:26:31.513 回答
2

string将转换它们。这是一个原子函数

q)string (`A.ABC;`B.DEF;`C.GHI)
"A.ABC"
"B.DEF"
"C.GHI"
于 2020-04-01T16:25:43.407 回答
2

正如其他人所提到的,string这就是你所追求的。在您的示例中,如果您有兴趣将前缀和后缀分开,.您可以这样做

q)a:(`A.ABC;`B.DEF;`C.GHI)
q)` vs' a
A ABC
B DEF
C GHI

如果您想将这些转换为字符串,您可以string在上面再次使用。

于 2020-04-01T16:31:41.580 回答
1
q)string each (`A.ABC;`B.DEF;`C.GHI) 
"A.ABC"
"B.DEF"
"C.GHI"
于 2020-04-01T16:47:38.087 回答
0

谢谢大家,有用的答案!当我试图自己并行解决这个问题时,我发现($)这似乎也有效。

q)example:(`A;`B;`C)
q)updatedExample:($)example;
q)updatedExample
enlist "A"
enlist "B"
enlist "C"
于 2020-04-01T17:02:39.730 回答