繁体   English   中英

过滤具有两个或更多文件扩展名的文件名

[英]Filtering Filenames with two or more file extensions

我有大量的文件名作为字符串,我想用C#中两个或多个文件扩展名过滤文件名。

例:

  • pic.jpng
  • pic_21.03.2007_.jpng
  • manuel.pdf
  • manuel.pdf.exe ....我要过滤的那个!
  • pic_3.jpng

如何在文件名中搜索具有两个或更多文件扩展名的字符串?

如果通过文件扩展名表示文件名中的句点数,则只需将“。”计数即可。 每个文件名中的字符。 例如:

var myFilenames = new[] { "pic.jpng", "manuel.pdf", "manuel.pdf.exe" };
var twoOrMoreExtensions = myFilenames.Where(f => f.Count(x => x == '.') >= 2);
foreach (var filename in twoOrMoreExtensions)
{
    Console.WriteLine(filename);
}

将写出:

manuel.pdf.exe

正如评论中指出的那样,如果您包含pic_21.03.2007_.jpng ,则基于该规则将具有“ 3个扩展名”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM