取第 5 个符号后的分隔符后的所有字符

我有以下内容:

string test = "200| Άρχισε ξανά| Start again| test | test? |201,202,203,204 |list | picture]"

我如何获得第 5 个“|”右侧的所有字符 所以201,202,203,204 |列表 | 图片。字符数总是不同的。

这如何用 c# 来完成?

我正在尝试与

line.Substring(line.LastIndexOf('|') -3)

但结果是“|图片”。我也尝试 line.Split["|"] 但这也不起作用,因为我只想要第 5 个“|”之后的所有内容。


至尊宝的传说
浏览 119回答 2
2回答

米琪卡哇伊

您可以使用Split字符分割字符串'|',然后使用System.Linq扩展方法Skip跳过第一个5结果,最后string.Join使用字符将剩余部分再次连接在一起'|':string result = string.Join("|", test.Split('|').Skip(5));

眼眸繁星

你可以使用这个:string test = "200| Άρχισε ξανά| Start again| test | test? |201,202,203,204 |list | picture]";int pos = -1;for ( int i = 1; i <= 5; i++){&nbsp; pos = test.IndexOf('|', pos + 1);&nbsp; if ( pos == -1 )&nbsp; &nbsp; break;}string result = "";if ( pos != -1 )&nbsp; result = test.Substring(pos + 1).Trim();Console.WriteLine(result);Console.ReadKey();或者使用@RufusL linq 版本。
打开App,查看更多内容
随时随地看视频慕课网APP