在角镖中,我可以在基于多词标准的任何部分的字符串列表中找到索引吗



在angular dart中,我有一个字符串列表,其中包含可用的组和一个搜索字符串。我想在列表中找到包含搜索字符串的任何完整单词的索引。在这个例子中,我希望它找到索引0,因为搜索字符串中的一个单词"0";客户端";出现在组的上。我知道下面的代码将不起作用,因为它正在查找整个搜索文本。

List<String> groups = [];
groups .add('Client Information');
groups .add('User Information');
groups .add('Activity Information');
String searchtext = 'Client Customer';
return groups.indexWhere((item) => item.contains(searchtext));

您可以动态构建RegExp来搜索一组单词

final regExp = RegExp('(${searchtext.replaceAll(' ', '|')})');
final index = groups.indexWhere(regExp.hasMatch);

最新更新