所以我今天有一个名为“ nick _george_ james ”的字符串,它看起来像这样
string today = "_nick__george__james_";
如何将“_”之间的文本隔离为新字符串?我想把 3 个名字分成单独的字符串,这样最后我就有了 name1、name2、name3 的值 nick、george 和 james
我的应用程序是用 c# 编写的
string[] array = today.Split('_');
编辑您的问题后,我意识到_
您的字符串中有多个。您应该尝试以下方法。
string[] array = today.Split("_".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
或者
string[] array = today.Split(new []{"_"}, StringSplitOptions.RemoveEmptyEntries);
稍后您array
将包含:
array[0] = "nick";
array[1] = "george";
array[2] = "james";
string[] array = today.Split('_');
name1=array[0];
name2=array[1];
name3=array[2];
string[] nameArray = today.Split('_');
在这里,您将获得一组名称。您可以通过指定 nameArray 的索引位置来获取每个名称。
即现在nameArray包含的值如下
nameArray[0] = "nick", nameArray[1] = "george", nameArray[2] = "james"
想出一个除 string.Split 之外的想法。
string today = "_nick__george__james_";
//Change value nNoofwordstobeFound accordingly
int nNoofwordstobeFound = 3;
int nstartindex = 0;
int nEndindex = 0;
int i=1;
while (i <= nNoofwordstobeFound)
{
Skip:
nstartindex = today.IndexOf("_",nEndindex);
nEndindex = today.IndexOf("_", nstartindex + 1);
string sName = today.Substring(nstartindex + 1, nEndindex - (nstartindex + 1));
if (sName == "")
{
goto Skip;
}
else
{
//Do your code
//For example
string abc= sName;
}
i++;
}
我仍然更喜欢 string.split 方法而不是任何时候。