首页 > 解决方案 > 使用正则表达式获取子列表

问题描述

我有一个这样的清单:

myList: ("ab";"bc";"cd","de");

我想获得一个包含“b”的子列表,我知道我可以这样做:

myList like "*b*"

但是,这会返回一个二进制列表。1100b;如何改为返回 ("ab";"bc") 列表?

标签: kdb

解决方案


以下代码返回所需的子列表

myList: ("ab";"bc";"cd","de");
myList where myList like "*b*"

正如你所提到的

  1. myList like "*b*"返回布尔列表1100
  2. where 1100返回具有真值的索引列表:0, 1
  3. myList 0 1返回的前两个元素myList

推荐阅读