大家好,我手头有一个问题,我似乎无法弄清楚,我有一个字符串(C#),看起来像这样:
string tags = "cars, motor, wheels, parts, windshield";
我需要在每个逗号处打破这个字符串,并将每个单词本身分配给一个新字符串,例如:
string individual_tag = "car";
我知道我必须在这里做某种循环,但我不确定如何处理这个问题,任何帮助都会非常感激。
不需要循环。只需致电Split()
:
var individualStrings = tags.Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries);
您可以使用其中一种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
}
使用拆分功能将完成您的任务...
string[] s = tags.Split(',');
或者
String.Split 方法 (Char[], StringSplitOptions)
char[] charSeparators = new char[] {',',' '};
string[] words = tags.Split(charSeparators, StringSplitOptions.RemoveEmptyEntries);
string[] words = tags.Split(',');
您正在寻找 C# split()函数。
string[] tags = tags.Split(',');
编辑:
string[] tag = tags.Trim().Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries);
您绝对应该使用 Justin Niessner 提供的表格。根据您收到的输入,有两个关键区别可能会有所帮助:
你的,
s 后面有空格,所以最好分开", "
StringSplitOptions.RemoveEmptyEntries
如果您有一个尾随逗号,将删除可能的空条目。
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