我有这样的字符串:
00123_MassFlow
0022245_VOlumeFlow
122_447_Temperature
我必须使用C#将这些字符串与_
分开。 _
可能会显示多个位置,但我必须使用最后一个值。
我应该是这样的:
MassFlow
VOlumeFlow
Temperature
我如何实现这一目标?
答案 0 :(得分:8)
"122_447_Temperature".Split('_').Last();
如果你不介意创建一个数组并抛弃一堆字符串的额外开销。它不会像手动使用LastIndexOf
和Substring
一样快,但它更容易阅读和维护,IMO。
答案 1 :(得分:4)
如果您的输入是单个字符串,则可以使用string.Split('\n')
将其输入集合:
string input = @"00123_MassFlow
0022245_VOlumeFlow
122_447_Temperature";
var items = input.Split('\n');
否则,我将假设您的字符串已经在名为items
的集合中。从那里,您可以使用LINQ轻松完成此任务:
List<string> result = (from x in items
let y = x.Trim()
select y.Substring(y.LastIndexOf('_') + 1)).ToList();
result
将包含字符串MassFlow
,VOlumeFlow
和Temperature
。