Это сделает трюк, это код PowerQuery ("M"):
let
Texts = {"The raisin is green","The pear is red","The apple is yellow"},
Words = {"red","blue","green"},
TextsLists = List.Transform(Texts, each Text.Split(_," ")),
Output = List.Transform(TextsLists, each List.Count(List.Intersect({_,Words}))>0)
in
Output
Есть два списка: предложения (тексты) и слова для проверки (слова).Первое, что нужно сделать, - это преобразовать предложения в списки слов, разделяющих строки, используя «» в качестве разделителя.
TextsLists = List.Transform(Texts, each Text.Split(_," ")),
Затем вы «скрещиваете» новые списки со списком слов.Результатом являются списки элементов (строк), которые появляются в обоих списках (TextLists и Words).Теперь вы подсчитываете эти новые списки и проверяете, является ли результат больше, чем cero.
Output = List.Transform(TextsLists, each List.Count(List.Intersect({_,Words}))>0)
Выход представляет собой новый список {True, True, False).
Кроме того, вы можете изменитьВыведите следующую строку:
Output = List.Transform(TextsLists, each List.Intersect({_,Words}){0}?)
Это вернет список первого совпадения или ноль, если совпадения нет.В примере: {"зеленый", "красный", "ноль"}
Надеюсь, это вам поможет.