Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 字符串[]管理_C#_String - Fatal编程技术网

C# 字符串[]管理

C# 字符串[]管理,c#,string,C#,String,好吧,那我就开门见山了。说清楚一点,我在寻找可能的代码示例 我有一个普通的字符串,比方说 string mystring = "this is my string i want to use"; 好的,现在我有了我的字符串,我用 string[] splitArray = mystring.Split(new char[] { ' ' }); 现在我有了splitArray[0]到splitArray[7]。 现在,我需要用绳子做一些我通常不需要做的奇特的事情。 以下是一些: 我需要删掉第一

好吧,那我就开门见山了。说清楚一点,我在寻找可能的代码示例

我有一个普通的字符串,比方说

string mystring = "this is my string i want to use";
好的,现在我有了我的字符串,我用

string[] splitArray = mystring.Split(new char[] { ' ' });
现在我有了splitArray[0]到splitArray[7]。 现在,我需要用绳子做一些我通常不需要做的奇特的事情。 以下是一些:

我需要删掉第一个单词,剩下7个单词,这样我就有了如下内容:

string myfirstword = "this";
mystring = "is my string i want to use";
现在,我需要一次又一次地使用mystring,在不同的时间使用它的不同部分,根据字符串的不同,我不知道它会有多长。因此,我将举一些我需要的东西的例子

首先,我需要知道,有多少个单词(这很简单,只需输入) 第二,我需要一些方法来使用

string secondword = splitArray[1];
string everythingAfterTheSecondWord = splitArray[2+];
如果您注意到,我包含了一个[2+]。。。+表示我希望将数组中的所有字符串放回一起,所有空格都放回一个字符串中。那么比如说,

string examplestring = "this is my example for my stack overflow question";
string[] splitArray2 = examplestring.Split(new char[] { ' ' });
现在,如果我调用splitArray2[4+],我希望返回“for my stack overflow question”。显然,这并不像向字符串数组中添加+那么简单。。但这正是我所需要的,在目前的情况下,我尝试了许多其他简单的方法,但这些方法根本不起作用

另外,如果我调用类似splitArray2[2-5]的东西,我会想要,单词2到5

总结: 我需要更好地管理我的字符串[]数组,我需要能够找到单词*之后的每个单词,需要能够在保留字符串其余部分不变的情况下去掉字符串中的随机单词,并且需要能够通过
n
找到字符串
m

谢谢

那么,要做到“每个单词都从单词X开始”,你可以这样做:

string newString = string.join(splitArray," ",x);
要获取从x开始的y单词,请执行以下操作:

string newString = string.join(splitArray," ",x,y);
要获取字数,请执行以下操作:

int wordCount= splitArray.Length;
综上所述,x-y是这样的:

string newString = string.join(splitArray," ",x, splitArray.Length-x+1);

您所寻找的大部分内容都可以通过
列表来实现。简而言之:

string mystring = "this is my string i want to use";

List<string> splitArray = new List<string>(mystring.Split(new char[] { ' ' }));
string firstWord = splitArray[0];

// mystring2 = "is my string i want to use"
splitArray.RemoveAt(0);
string mystring2 = String.Join(" ", splitArray.ToArray());
对于拆分数组[2-5]

List<string> arraySlice = splitArray.Skip(2).Take(3).ToList();
List arraySlice=splitArray.Skip(2).Take(3.ToList();

这是一个家庭作业问题吗?如果是的话,那么你会得到更多诚实的帮助。如果不是,那么我建议使用MSDN文档来处理字符串,因为它将检查您在这里提出的几乎所有问题。我建议使用MSDN文档。好的,我首先在最后几行末尾看到了.ToArray(),但现在是.ToList,我疯了吗。。。或者哪一个更好?
ToArray()
返回一个数组,
ToList()
返回一个
列表。不,你不会疯的,我改了。引用一位非常聪明的人的话(不,现在不记得是谁了),“我从来没有遇到过数组比集合解决得更好的问题。”我同意。但这是你个人的选择。
List<string> arraySlice = splitArray.Skip(2).Take(3).ToList();