【发布时间】:2015-07-15 15:58:27
【问题描述】:
我有一个 string 数组,我想从中返回一个过滤后的数组,该数组仅包含与搜索字符串匹配的那些字符串。
string[] myValues = {"School.Report1", "School.Report2", "School.Report3", "House.Report1", "House.Report2"};
string myFilter = "School";
string[] filteredValues = myValues.Filter(myFilter); // or something similar
filteredValues 必须仅包含:"School.Report1", "School.Report2", "School.Report3"。
-- 编辑--
如果可能的话,我更喜欢非 LINQ 方法。否则我知道这个问题可以用这里提出的解决方案来回答:filter an array in C#。
【问题讨论】:
-
@Sayse 是的,但是建议的不使用 LINQ 的解决方案是一个
foreach循环,里面有比较。我想知道在没有 LINQ 的情况下是否有更优雅、更简洁的方法。 -
能否包含
School1.Report1 -
@CheshireCat:你没有提到不能使用 LINQ,为什么?
-
你应该展示你尝试过的东西,这只是我发现的第一个重复项,但周围有很多重复项。他们中的大多数都使用您描述的方法,所以我不确定这里的实际问题是什么