分割并获得c#中字符串的最后一部分

本文关键字:字符串 最后 一部分 分割 | 更新日期: 2023-09-27 18:08:05

我有像"abc-def-gef"这样的字符串。我需要从"-"中删除字符串的第一部分,并获得最后一部分,如"def-gef"。这是如何在c#中实现的。请帮我找出解决办法。

谢谢。

分割并获得c#中字符串的最后一部分

如果您总是想要最后一个,并且分隔符总是'-',那么这是一种简单的方法。

var myString =  "abc-def-gef";
var result = myString.Split('-').Last();

输出:"gef"

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

输出:一个"gef" "def"的IEnumerable

这里:

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

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

正如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

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

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