为了账号安全,请及时绑定邮箱和手机立即绑定

从列表中删除多余的文件夹路径

从列表中删除多余的文件夹路径

守着一只汪 2023-02-16 14:22:58
我有以下列表,其中包含一系列文件夹路径。其中一些是多余的,所以我需要删除它们,最终列表应该只包含底层文件夹:初始列表:var paths = new List<string>{    "Pavements/",    "Pavements/2019_05/",    "Pavements/2019_06/",    "Pavements/2019_06/A/",    "Roads/",    "Roads/2019_06/"};最终列表应如下所示:paths ={    "Pavements/2019_05/",    "Pavements/2019_06/A/",    "Roads/2019_06/"};即所有上层文件夹路径已被删除。有谁知道我怎么能做到这一点?我有一种感觉,我需要一种递归方法,但不确定如何去做。我正在使用 C#,但可以用 Java 或类似的东西回答。谢谢。
查看完整描述

1 回答

?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

一种方法是使用 linq 查询,将每个项目与所有其他项目进行比较,并仅在没有其他项目以它开头时才返回该项目:

paths = paths.Where(path => !paths.Any(p => p != path && p.StartsWith(path))).ToList();


查看完整回答
反对 回复 2023-02-16
  • 1 回答
  • 0 关注
  • 90 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信