【问题标题】:how do i compare the special string in query如何比较查询中的特殊字符串
【发布时间】:2021-04-29 20:06:36
【问题描述】:

我要查询,表中有特殊字符

例如:

tab:([]a:("ab*cd*ef";"3rr3f";"fewfa");b:1 2 3)

我试过了

select from tab where a like "ab*cd*ef"

这不起作用。 我在一个函数中使用它,所以它会将确切的单词提取到一个变量中

 variable:"ab*cd*ef"

我使用这个变量来匹配另一个表。想知道这应该如何工作

【问题讨论】:

    标签: kdb


    【解决方案1】:

    * 是用于匹配任何字符序列的通配符。不幸的是,kdb 不支持开箱即用的复杂正则表达式,但在这种情况下,您可以使用替代列表符号来转义 *

    q)select from tab where a like "ab[*]cd[*]ef"
    a          b
    ------------
    "ab*cd*ef" 1
    
    

    https://code.kx.com/q/basics/regex/

    【讨论】:

    • 是的,在 kdb 中,尽管很奇怪,[] 是大多数特殊字符的转义符。
    猜你喜欢
    • 1970-01-01
    • 2015-07-15
    • 2015-11-06
    • 2015-03-08
    • 2016-04-22
    • 1970-01-01
    • 2019-08-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多