字符串拆分为c#

我有这样的字符串:

00123_MassFlow 0022245_VOlumeFlow 122_447_Temperature 

我必须使用C#将这些字符串拆分为__可能会出现多个地方,但我必须采取最后一个值。

我应该是这样的:

  MassFlow VOlumeFlow Temperature 

我怎么能做到这一点?

 "122_447_Temperature".Split('_').Last(); 

如果你不介意创建一个数组并抛弃一堆字符串的额外开销。 它不会像手动使用LastIndexOfSubstring一样快,但它更容易阅读和维护,IMO。

如果您的输入是单个字符串,则可以使用string.Split('\n')将其输入集合:

 string input = @"00123_MassFlow 0022245_VOlumeFlow 122_447_Temperature"; var items = input.Split('\n'); 

否则,我将假设你的字符串已经在一个名为items的集合中。 从那里,您可以使用LINQ轻松完成此任务:

 List result = (from x in items let y = x.Trim() select y.Substring(y.LastIndexOf('_') + 1)).ToList(); 

result将包含字符串MassFlowVOlumeFlowTemperature