dart - 在angular dart中,我是否可以根据多词条件的任何部分在字符串列表中找到索引

标签 dart

在有角 Dart 中,我有一个用可用组和搜索字符串填充的字符串列表。我想在列表中找到包含搜索字符串的所有单词的索引。在此示例中,我希望它找到索引0,因为搜索字符串“Client”中的一个单词出现在组中的一个上。我知道下面的代码将无法正常工作,因为它正在寻找整个searchtext。

      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);

关于dart - 在angular dart中,我是否可以根据多词条件的任何部分在字符串列表中找到索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63507821/

相关文章:

dart - BuiltList 和 List.unmodifiable 之间的区别

flutter - 如何为文本字段提供初始值?

dart - pubspec.yaml 中指定的包版本是否包含在编译输出中的任何位置?

dart - 如何将映射中的数组转换为字符串数组

firebase - 如何在 flutter 中自动登录现有用户

dart - 类型 '_InternalLinkedHashMap<String, dynamic>' 不是类型 'List<Map<String, dynamic>>' 的子类型

flutter - 对话框中按按钮时文本未更新

flutter - 如何在单击 IconButton 时将主题更改为深色?

flutter - 如何构建应用程序状态以便所有相关的小部件在状态更改时更新?

dart - 如何在 Flutter 中创建圆形 ListView