我想知道是否可以使用split函数按逗号分隔一个由多个部分组成的字符串,就像这样:
我只想要字符串的第二部分,即12-JUL-16,而不是其他部分。
10,12-JUL-16,11,0
我只想要字符串的第二部分,即12-JUL-16,而不是其他部分。
是的:
var result = str.Split(',')[1];
或者:
var result = str.Split(',').Skip(1).FirstOrDefault();
或(更好的性能-只需要拆分的前三部分):
var result = str.Split(new []{ ',' }, 3).Skip(1).FirstOrDefault();
如果您不确定是否有第二项,请使用LINQ的Skip()
,First()
或FirstOrDefault()
。
string s = "10,12-JUL-16,11,0";
string second = s.Split(',').Skip(1).First();
或者,如果你非常确定有第二个项,你可以使用数组访问器:
string second = s.Split(',')[1];
String.Split
,它有一个重载的方法可以接受最大分割数。var input = "10,12-JUL-16,11,0"; // input string.
input.Split(new char[]{','},3)[1]
请查看Demo
示例。
可以的:
string[] parts = str.Split(',');
parts[1]
中。string secondPart = str.Split(',')[1];
或者使用Linq:
string secondPart = str.Split(',').Skip(1).FirstOrDefault();
if (secondPart != null)
{
...
}
else
{
...
}
您不仅可以使用一个符号来拆分字符串,例如:
string secondPart = str.Split(new[] {',', '.', ';'})[1];
string input = "10,12-JUL-16,11,0";
string[] parts = input.Split(',');
Console.WriteLine(parts[1]);
输出:
12-JUL-16