需要引用部分文件名数组的倒数第二个元素

问题描述 投票:1回答:1

我需要在文件名数组中找到部分文件名的不同值。我想一行完成。因此,我使用类似的文件名:

string[] filenames = {"aaa_ab12345.txt", "bbb_ab12345.txt", "aaa_ac12345.txt", "bbb_ac12345"}

并且我需要为它的ab12345部分找到不同的值。所以我目前有这样的东西:

string[] filenames_partial_distinct = Array.ConvertAll(filenames, file => System.IO.Path.GetFileNameWithoutExtension(file).Split({"_","."}, StringSplitOptions.RemoveEmptyEntries)[1]).Distinct().ToArray();

现在,我正在获取格式为aaa_bbb_ab12345.txt的文件名。因此,除了引用文件名的第二部分外,我还需要引用第二部分到最后一部分。那么,如果是Split方法的结果,如何基于一行中的数组长度来引用任意元素?类似于:

Array.ConvertAll(filenames, file=>file.Split(separator)[this.Length-2]).Distinct().ToArray();

换句话说,如果一个字符串方法导致一个字符串数组,我如何根据数组的长度立即选择元素:

String.Split()[third from end, fifth from end, etc.];
c# arrays string split
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.