3

我认为这必须有一个简单的答案,但我找不到任何例子。

我必须将列表的每个成员与子字符串列表进行比较,以查看该成员是否包含子字符串,如果包含 - 将子字符串返回到与第一个列表成员相同位置的第三个列表。

例子:

ListA = {"help me rhonda",  "in my room", "good vibrations", "god only knows"}
ListB = {"room", "me", "only"}

ListC should then should =  {"me", "room", null, "only"}

我是一名高级程序员,已经编写 M 大约 4 天了。这让我疯狂。我一直在尝试几种不同的功能,但到目前为止我还没有接近,所以我不打算列出我的代码。List.Transform 似乎是最有可能的选择,但我无法完全解决。

谢谢您的帮助,

-J

4

1 回答 1

4

单词交叉点

let
    ListA = {"help me rhonda",  "in my room", "good vibrations", "god only knows"},
    ListB = {"room", "me", "only"},
    intersect=List.Transform(ListA, (lineA)=>Text.Combine(List.Intersect({Text.Split(lineA, " "), ListB}), "|"))
in
    intersect

在此处输入图像描述

仅标志

let
    ListA = {"help me rhonda",  "in my room", "good vibrations", "god only knows"},
    ListB = {"room", "me", "only"},
    contains_word=List.Transform(ListA, (lineA)=>List.MatchesAny(ListB, (wordB)=>Text.Contains(lineA, wordB)))
in
    contains_word

在此处输入图像描述

于 2016-10-27T04:05:21.773 回答