有很多很棒的问题/答案与搜索/循环字符串数组并匹配给定的字符串有关,但我无法找到一个简明的例子,它使用Lodash删除/删除任何字符串包含所需搜索子字符串的数组元素。
我找到的搜索/匹配字符串数组的最佳资源是这个问题(几个好的答案):Use lodash to find substring from array of strings
这些答案似乎都不适用于立即删除与搜索/子字符串匹配(true)的项目。
是否有一种简单的方法可以循环遍历字符串数组并使用Lodash删除匹配的项目?
虽然桌面上还有其他选项,但我们理想的是要使用Lodash,因为我们已经依赖于它来实现许多类似的功能。
答案 0 :(得分:0)
所以我最终找到了一种方法来使用Lodash的_.remove函数来实现如下:
// The String (SubString) we want to match against array (for dropping purposes)
var searchSubString = "whatever"
// Remove all array items that contain the text "whatever"
_.remove(my_array, function(searchSubString) {
return n.indexOf(searchSubString) !== -1;
});
基本上indexOf匹配字符串中子字符串的位置,如果未找到子字符串,则当indexOf返回-1以外的数字时,它将返回-1(该数字是字符数内的字符数的SubString位置数组字符串)Lodash通过数组变异删除该项目。