我需要使用C#中的Split
函数提供帮助。用户需要输入3个字或更多的短语。我已经知道用户的第一个词是什么。例如,如果用户输入“Microsoft Visual Studio 2015”,我已经知道用户将进入“Microsoft'”。如何让Split
切断第一个单词并仅将以下短语作为字符串?
答案 0 :(得分:3)
char[] separators = { ' ' };
string secondword = myString.Split(separators, 2)[1];
会给你正确的输出。带有int参数的split语句指定要返回最多2个子字符串,并且数组索引[1]指示其中的第二个(无论是在第一个空格之后)作为输出。
如果您需要第一个单词,您可以这样做:
char[] separators = { ' ' };
string firstword= myString.Split(separators, 2)[0];
答案 1 :(得分:1)
您可以使用{/ 1}}方法,例如
Replace()
(OR)您也可以使用
之类的string str = "Microsoft Visual Studio 2015";
str = str.Replace("Microsoft","");
方法
Substring()
答案 2 :(得分:1)
如果您知道字符串将以值开头,则可以从字符串中删除该字符数:
string value = "Microsoft Visual Studio 2015";
string expected = "Microsoft ";
if (value.StartsWith(expected))
{
value = value.Substring(expected.Length);
}
答案 3 :(得分:1)
如果你不知道第一个单词,但是你总是想要把它拿出来,你可以使用String.Substring()
:
string input = "Microsoft Visual Studio 2015";
string result = input.Substring(input.IndexOf(' ') + 1);
答案 4 :(得分:1)
String.Split()
方法的overload采用整数,该整数根据数组中的字符将字符串拆分为最大数量的子字符串。它的参数应该是char[]
和int
,如下所示:
string input = "Microsoft Visual Studio 2015";
string output = input.Split(new[] {' '}, 2)[1];
答案 5 :(得分:0)
如果您愿意切片并重新构建字符串,可以使用String.Split
来剪切字符串,然后Enumerable.Skip
跳过第一个字,最后String.Join
{3}}建立一个新字符串:
var str = "Microsoft Visual Stuio";
str = string.Join(" ", str.Split(' ').Skip(1));