将一个字符串拆分为2个字符串
本文关键字:字符串 拆分 2个 一个 | 更新日期: 2023-09-27 17:57:49
我需要帮助使用C#中的Split
函数。用户需要输入一个3个单词或更多的短语。我已经知道用户的第一个单词是什么。例如,如果用户输入"Microsoft Visual Studio 2015",我已经知道该用户将输入"Microsoft"。如何让Split
去掉第一个单词,只把下面的短语作为字符串?
char[] separators = { ' ' };
string secondword = myString.Split(separators, 2)[1];
将为您提供正确的输出。带int参数的split语句指定最多返回2个子字符串,数组索引[1]将其中的第二个子字符串(第一个空格之后的任何一个子字符串)作为输出。
如果你需要第一个单词,你可以做类似的事情:
char[] separators = { ' ' };
string firstword= myString.Split(separators, 2)[0];
如果您知道字符串将以一个值开头,您可以从字符串中删除该数量的字符:
string value = "Microsoft Visual Studio 2015";
string expected = "Microsoft ";
if (value.StartsWith(expected))
{
value = value.Substring(expected.Length);
}
如果你不知道第一个单词,但你总是想把它取出来,你可以使用String.Substring()
:
string input = "Microsoft Visual Studio 2015";
string result = input.Substring(input.IndexOf(' ') + 1);
您可以使用类似的Replace()
方法
string str = "Microsoft Visual Studio 2015";
str = str.Replace("Microsoft","");
(或者)你也可以像一样使用Substring()
方法
str = str.Substring(("Microsoft".Length + 1), str.Length - ("Microsoft".Length + 1));
String.Split()
方法重载了一个整数,该整数根据数组中的字符将字符串拆分为最大数量的子字符串。它的参数应该是char[]
和int
,如下所示:
string input = "Microsoft Visual Studio 2015";
string output = input.Split(new[] {' '}, 2)[1];
如果您愿意切片并重新构建字符串,可以使用String.Split
将字符串切碎,然后使用Enumerable.Skip
跳过第一个单词,最后使用String.Join
构建新字符串:
var str = "Microsoft Visual Stuio";
str = string.Join(" ", str.Split(' ').Skip(1));