越来越多的文件标题

本文关键字:标题 文件 越来越多 | 更新日期: 2023-09-27 18:09:19

我有13个.srt文件。每一集的标题都有"2x——",其中"——"是剧集副标题的数量。我有一个代码,对每个.srt文件的所有信息进行评分(使用foreach),但我想将每个.srt文件设置为一个适当的电影文件(通过将.srt文件的名称更改为电影名称)。例如:我有一个文件夹,其中有一个。srt文件和一个。mp4文件。其中。srt文件称为:Example - 2x01(.srt), movie文件称为Example. s01e01 (.mp4)。所以我想让我的应用程序检测数字"2x-" (2x之后),并找到一个适当的电影(在这种情况下,它将是数字"E""S01E-")我希望你理解我的问题,我不知道我怎么能跟踪它…

我是这样看的。div[图片]

你可能说的是正则表达式,因为你的副标题文件名确实有一个常见的模式,比如"<title> - 2X<episode>.srt"你想把它转换成另一个模式,"<title>.S01E<episode>.mp4"

下面的代码做到了这一点。title组包含任何字符,直到它找到- 2x序列,然后它得到episode组作为一个或多个数字。

foreach (var fullPath in Directory.GetFiles("*.srt"))
{
    // "Example - 2x01.srt"
    var subtitle = Path.GetFileName(fullPath);
    var match = Regex.Match(subtitle, @"(?<title>.*?) - 2x(?<episode>'d+)'.");
    if (match.Success)
    {
        // "Example.S01E01.mp4"
        var movie = String.Format("{0}.S01E{1}.mp4", 
            match.Groups["title"].Value,
            match.Groups["episode"].Value);
        Console.WriteLine(movie);
    }
}

越来越多的文件标题