拆分并获取c#中字符串的最后一部分

时间:2016-09-20 11:41:21

标签: c# asp.net linq

我喜欢" abc-def-gef"。我需要从" - "中删除字符串的第一部分。得到最后一部分,如" def-gef"。如何在c#中实现。请帮我找出解决方案。

谢谢。

4 个答案:

答案 0 :(得分:4)

这里:

string str = "abc-def-gef";
str = str.Substring(str.IndexOf("-")+1);

IndexOf("-")将返回第一个“ - ”的索引,而Substring会将该索引中的字符串(+1跳过“ - ”)剪切到字符串的末尾

答案 1 :(得分:3)

这是一种简单的方法,如果你总是想要最后一个并且分隔符始终是' - '我将会这样做。

var myString =  "abc-def-gef";

var result = myString.Split('-').Last();

输出:" gef"

var result2 = myString.Split('-').Skip(1).Take(2);

输出: " gef" " DEF"

答案 2 :(得分:2)

正如Alex所说,您可以将SubstringLastIndexOf

结合使用
    var str = "abc-def-gef";
    var newStr = str.Substring(str.LastIndexOf("-") + 1); //returns gef

    var str = "abc-def-gef";
    var newStr = str.Substring(str.IndexOf("-") + 1); //returns def-gef

答案 3 :(得分:-1)

像这样的事情。请更正相同的语法:

string inpt = "abc-def-gef";
string[] arr = inp.Split('-');
string result = arr[1] + "-" +arr[2];