如何获得拆分的剩余内容?

时间:2019-03-06 21:11:09

标签: c# .net

假设我有一个字符串:

var myFilename = "342134_My_Awesome_File.zip

我只想提取:My_Awesome_File.zip

我正在尝试以下操作:

var removedPrependedTieBreaker = myFilename.Split('_').Skip(1);

但是,这将产生一个IEnumerable<string>

我们如何在下划线处使用split,并获取其余内容?

3 个答案:

答案 0 :(得分:5)

您只需要使用不同的split重载即可计数:

var parts = myFilename.Split(new[] { '_' }, 2, StringSplitOptions.None);
var interestingData = parts[1];

答案 1 :(得分:5)

您可以用String.Join重新组合其余部分。但是也许最好避免拆分,而只需要一个子字符串:

myFilename.Substring(myFilename.IndexOf('_') + 1)

答案 2 :(得分:1)

虽然我喜欢Joe Sewell的答案,但我只是想我可以给您另一种方法(如问题注释中所述,string.Join之外)使您自己的方法可行:

var removedPrependedTieBreaker = myFilename.Split('_').Skip(1).Aggregate((current, next) => $"{current}_{next}");

这将采用您制作的IEnumerable<string>,并用string作为定界符,将片段重新组成为_