使用Regex搜索List <string>的内容

时间:2018-05-18 05:07:35

标签: regex dart

我知道我们可以检查列表的各个项目并将其与正则表达式进行匹配。我想知道是否有一个函数可以检查列表的所有内容以进行正则表达式匹配,并让我知道列表中的任何项目是否与正则表达式匹配。 例如,假设我有一个像这样的字符串

List<String> lst = ["Carfax","Carmax","Carpro","VanPro"];

我想知道列表中的任何项目是否包含单词car

1 个答案:

答案 0 :(得分:2)

void main() {
  List<String> lst = ["Carfax","Carmax","Carpro","VanPro"];
  var regExp = new RegExp('car', caseSensitive: false);
  var result = lst.where((item) => regExp.hasMatch(item)).toList();
  print(result);
}

如果RegExp如此简单,你也可以使用contains,但我认为问题的简单正则表达式仅仅是为了简洁示例。

void main() {
  List<String> lst = ["Carfax", "Carmax", "Carpro", "VanPro"];
  var result = lst.where((item) => item.toLowerCase().contains('car')).toList();
  print(result);
}