C# 如何在每个逗号处打断字符串?
嗨,伙计们,我手头有一个我似乎无法解决的问题,我有一个字符串(C#),看起来像这样:C# 如何在每个逗号处打断字符串?,c#,asp.net,.net,string,C#,Asp.net,.net,String,嗨,伙计们,我手头有一个我似乎无法解决的问题,我有一个字符串(C#),看起来像这样: string tags = "cars, motor, wheels, parts, windshield"; 我需要在每个逗号处打断此字符串,并让每个单词自己分配给一个新字符串,如: string individual_tag = "car"; 我知道我必须在这里做一些循环,但我不确定如何实现这一点,任何帮助都将非常感谢。使用函数将完成您的任务 string[] s = tags.Split(',');
string tags = "cars, motor, wheels, parts, windshield";
我需要在每个逗号处打断此字符串,并让每个单词自己分配给一个新字符串,如:
string individual_tag = "car";
我知道我必须在这里做一些循环,但我不确定如何实现这一点,任何帮助都将非常感谢。使用函数将完成您的任务
string[] s = tags.Split(',');
或
利用功能将完成您的任务
string[] s = tags.Split(',');
或
不需要循环。只需调用
Split()
:
不需要循环。只需调用
Split()
:
您正在寻找C#函数
string[] tags = tags.Split(',');
编辑:
string[] tag = tags.Trim().Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries);
你绝对应该使用Justin Niessner提供的表格。根据您收到的输入,有两个关键差异可能会有所帮助:
,
后面有空格,因此最好在,“
StringSplitOptions.RemoveEmptyEntries
将删除尾随逗号的空条目string[] tags = tags.Split(',');
编辑:
string[] tag = tags.Trim().Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries);
你绝对应该使用Justin Niessner提供的表格。根据您收到的输入,有两个关键差异可能会有所帮助:
,
后面有空格,因此最好在,“
StringSplitOptions.RemoveEmptyEntries
将删除尾随逗号的空条目、
和空格作为拆分字符,然后在每个字符出现时,输入字符串将被拆分,但结果中可能有空字符串。我们可以使用StringSplitOptions.removeMptyEntries
参数删除它们
string[] tagArray = tags.Split(new char[]{',', ' '},
StringSplitOptions.RemoveEmptyEntries);
或
您可以通过以下方式访问每个标记:
foreach (var t in tagArray )
{
lblTags.Text = lblTags.Text + " " + t; // update lable with tag values
//System.Diagnostics.Debug.WriteLine(t); // this result can be see on your VS out put window
}
您可以使用其中一种方法
让我们试试第二种选择:
我将、
和空格作为拆分字符,然后在每个字符出现时,输入字符串将被拆分,但结果中可能有空字符串。我们可以使用StringSplitOptions.removeMptyEntries
参数删除它们
string[] tagArray = tags.Split(new char[]{',', ' '},
StringSplitOptions.RemoveEmptyEntries);
或
您可以通过以下方式访问每个标记:
foreach (var t in tagArray )
{
lblTags.Text = lblTags.Text + " " + t; // update lable with tag values
//System.Diagnostics.Debug.WriteLine(t); // this result can be see on your VS out put window
}
您看过字符串的实例方法了吗?Visual Studio Intellisense是您的朋友。如果它不是通过设置来实现的,你也可以使用ctrl空格来强制它。没有必要否决他。。。他显然是新来的网站,一个简单的评论政策将是适当的。对不起,伙计们,我一定是愚蠢的或什么,但我得到什么,当我编译你的代码。我一定是做错了什么。您是否查看了字符串的实例方法?Visual Studio Intellisense是您的朋友。如果它不是通过设置来实现的,你也可以使用ctrl空格来强制它。没有必要否决他。。。他显然是新来的网站,一个简单的评论政策将是适当的。对不起,伙计们,我一定是愚蠢的或什么,但我得到什么,当我编译你的代码。我一定是做错了什么——唯一正确解析示例输入的答案,外加StringSplitOptions。+1我同意,StringSplitOptions也是答案的一个很好的补充。这不是编译,没有使用string和StringSplitOptions进行拆分的重载方法唯一正确解析示例输入的答案,还包括StringSplitOptions。+1我同意,StringSplitOptions也是答案的一个很好的补充。这不是编译,没有使用string和stringsplitoptions拆分的重载方法second选项将不编译second选项将不编译加载空间将仍在results中leading空格将仍在results中仍然不工作,这是我的代码:string tags=“汽车、电机、车轮、零件、挡风玻璃”;var individualStrings=tags.Split(“,”.ToCharArray(),StringSplitOptions.RemoveEmptyEntries);foreach(string inv in individualStrings){Console.WriteLine(inv);}我无法访问tagArray上的任何标记您可以调试并查看您是否获得tagArray的值<代码>控制台。WriteLine不会像控制台应用程序中那样写入网页。尝试
System.Diagnostics.Debug.WriteLine
,您可以在输出窗口(view menu=>output window)中看到结果。我创建了一个标签,并按如下方式分配给它:lblt.Text=t;当我这样做的时候,我能够看到字符串“挡风玻璃”中的最后一个单词是的,你需要这样做,lable.Text=lable.Text+”,“+inv代码>仍然不工作,这是我的代码:string tags=“汽车、电机、车轮、零件、挡风玻璃”;var individualStrings=tags.Split(“,”.ToCharArray(),StringSplitOptions.RemoveEmptyEntries);foreach(string inv in individualStrings){Console.WriteLine(inv);}我无法访问tagArray上的任何标记您可以调试并查看您是否获得tagArray的值<代码>控制台。WriteLine不会像控制台应用程序中那样写入网页。尝试System.Diagnostics.Debug.WriteLine
,您可以在输出窗口(view menu=>output window)中看到结果。我创建了一个标签,并按如下方式分配给它:lblt.Text=t;当我这样做的时候,我能够看到字符串“挡风玻璃”中的最后一个单词是的,你需要这样做,lable.Text=lable.Text+”,“+inv代码>前导空格仍在结果中前导空格仍在结果中results@Damith:谢谢你的编辑。我只是从我提供的作为参考的链接中获取的。@Damith:谢谢编辑。我只是从我提供的作为参考的链接中获取它。
string[] tagArray = s.Split(", ".ToCharArray(),
StringSplitOptions.RemoveEmptyEntries);
foreach (var t in tagArray )
{
lblTags.Text = lblTags.Text + " " + t; // update lable with tag values
//System.Diagnostics.Debug.WriteLine(t); // this result can be see on your VS out put window
}