【发布时间】:2011-09-27 13:51:00
【问题描述】:
我有一个类似'/Test1/Test2'的字符串,我需要将Test2 与它分开。我如何在 C# 中做到这一点?
【问题讨论】:
-
看看string.Split()方法。
我有一个类似'/Test1/Test2'的字符串,我需要将Test2 与它分开。我如何在 C# 中做到这一点?
【问题讨论】:
试试这个:
string toSplit= "/Test1/Test2";
toSplit.Split('/');
或
toSplit.Split(new [] {'/'}, System.StringSplitOptions.RemoveEmptyEntries);
要拆分,后者会删除空字符串。
添加.Last() 将获得最后一项。
例如
toSplit.Split('/').Last();
【讨论】:
使用.Split()。
string foo = "/Test1/Test2";
string extractedString = foo.Split('/').Last(); // Result Test2
这个网站有不少examples of splitting strings in C#。值得一读。
【讨论】:
使用 .Split 和一点 LINQ,您可以执行以下操作
string str = "/Test1/Test2";
string desiredValue = str.Split('/').Last();
否则你可以这样做
string str = "/Test1/Test2";
string desiredValue = str;
if(str.Contains("/"))
desiredValue = str.Substring(str.LastIndexOf("/") + 1);
感谢 Binary Worrier,忘了你要删除“/”,该死的栅栏
【讨论】:
string desiredValue = str.Substring(str.LastIndexOf("/")+1);,因为您不想要分隔符?
string[] arr = string1.split('/'); 字符串结果 = arr[arr.length - 1];
【讨论】:
string [] split = words.Split('/');
这将为您提供一个包含“”、“Test1”和“Test2”的数组split。
【讨论】:
如果你只想要 Test2 部分,试试这个:
string fullTest = "/Test1/Test2";
string test2 = test.Split('/').ElementAt(1); //This will grab the second element.
【讨论】:
string inputString = "/Test1/Test2";
string[] stringSeparators = new string[] { "/Test1/"};
string[] result;
result = inputString.Split(stringSeparators,
StringSplitOptions.RemoveEmptyEntries);
foreach (string s in result)
{
Console.Write("{0}",s);
}
OUTPUT : Test2
【讨论】: