1

大家好,我手头有一个问题,我似乎无法弄清楚,我有一个字符串(C#),看起来像这样:

string tags = "cars, motor, wheels, parts, windshield";

我需要在每个逗号处打破这个字符串,并将每个单词本身分配给一个新字符串,例如:

string individual_tag = "car";

我知道我必须在这里做某种循环,但我不确定如何处理这个问题,任何帮助都会非常感激。

4

6 回答 6

10

不需要循环。只需致电Split()

var individualStrings = tags.Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries);
于 2012-06-05T17:23:42.090 回答
7

您可以使用其中一种String.Split方法

Split Method (Char[])
Split Method (Char[], StringSplitOptions)
Split Method (String[], StringSplitOptions)

让我们尝试第二个选项:我,将空格作为拆分字符,然后在每个出现的字符上,输入字符串将被拆分,但结果中可以有空字符串。我们可以使用StringSplitOptions.RemoveEmptyEntries参数删除它们。

string[] tagArray = tags.Split(new char[]{',', ' '},
                               StringSplitOptions.RemoveEmptyEntries);

或者

 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 
}
于 2012-06-05T17:44:04.803 回答
7

使用拆分功能将完成您​​的任务...

string[] s = tags.Split(',');

或者

String.Split 方法 (Char[], StringSplitOptions)

char[] charSeparators = new char[] {',',' '};
string[] words = tags.Split(charSeparators, StringSplitOptions.RemoveEmptyEntries);
于 2012-06-05T17:23:20.203 回答
4
string[] words = tags.Split(',');
于 2012-06-05T17:23:41.310 回答
4

您正在寻找 C# split()函数。

string[] tags = tags.Split(',');

编辑

string[] tag = tags.Trim().Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries);

您绝对应该使用 Justin Niessner 提供的表格。根据您收到的输入,有两个关键区别可能会有所帮助:

  1. 你的,s 后面有空格,所以最好分开", "

  2. StringSplitOptions.RemoveEmptyEntries如果您有一个尾随逗号,将删除可能的空条目。

于 2012-06-05T17:23:48.497 回答
3

按空格分割的程序 [C#]

using System;
class Program
{
    static void Main()
    {
        string s = "there, is, a, cat";
        string[] words = s.Split(", ".ToCharArray());
    foreach (string word in words)
    {
        Console.WriteLine(word);
    }
    }
}

输出

there
is
a
cat

参考

于 2012-06-05T17:25:17.020 回答