我正在尝试将字符串转换为KDB中的double或float - 该字符串包含一个带有" accounting"的数字。 2,228,25
(金额)之类的格式 - 我使用类似"j"$amount
的内容我将50 44 50 50 56 46 50 53
作为返回值。如何将该字符串转换为正确的数字?谢谢
答案 0 :(得分:8)
在kdb +中将字符串转换为其他类型的原子时,必须使用大写字母进行强制转换。将带逗号的字符串转换为数字将返回空值,因此请尝试使用except或ssr删除它们。
"J"$"2,228,25" except ","
或
"J"$ssr["2,228,25";",";""]
答案 1 :(得分:1)
正如另一个例子所述,您可以使用except
排除","在转换之前。但是,如果您需要删除的字符串中有许多字符,并且这些字符各不相同,则可以使用inter
和已接受字符的列表,而不是例外:
q)amt:"2/228,25.0"
q)"F"$amt inter "0123456789."
222825f