split() 不仅可以跳过一个指定的字符串/字符,也可以跳过多个指定的字符或者字符串,也可以跳过一个字符串/字符数组中的任何一个/多个字符串/字符
分隔符是一个字符
string s = "You win some. You lose some.";
string[] subs = s.Split(' ');
foreach (var sub in subs)
{
Console.WriteLine($"Substring: {sub}");
}
// This example produces the following output:
//
// Substring: You
// Substring: win
// Substring: some.
// Substring: You
// Substring: lose
// Substring: some.
分隔符是一个字符数组
string s = "You win some. You lose some.";
string[] subs = s.Split(' ', '.');
foreach (var sub in subs)
{
Console.WriteLine($"Substring: {sub}");
}
// This example produces the following output:
//
// Substring: You
// Substring: win
// Substring: some
// Substring:
// Substring: You
// Substring: lose
// Substring: some
// Substring:
这里需要注意,如果不设置splitoptions 那么用split得到的数组里会默认把分隔符换成空格,如果我们的s = “123 23”,那么就会得到123和空格和23,若需要对通过split处理过得到的数组进行数字处理,那么空格那个字符就会导致错误 所以
下面的实例体现了splitoptions的用处,会将间隔符从生成的字符数组里移除掉,
string s = "You win some. You lose some.";
char[] separators = new char[] { ' ', '.' };
string[] subs = s.Split(separators, StringSplitOptions.RemoveEmptyEntries);
foreach (var sub in subs)
{
Console.WriteLine($"Substring: {sub}");
}
// This example produces the following output:
//
// Substring: You
// Substring: win
// Substring: some
// Substring: You
// Substring: lose
// Substring: some
当有多种分隔符或者不确定分隔符是哪一种/哪一个时,用分隔符数组作为split()输入的参数是非常省事的
static void Main(string[] args)
{
string s = "You win some. You lose some.";
char[] separators = new char[] { ' ', '.',':' };
string[] subs = s.Split(separators, StringSplitOptions.RemoveEmptyEntries);
for(int i = 0;i<subs.Length;i++)
{
Console.WriteLine(subs[i]+"\r");
Console.ReadLine();
}
string s中没有分隔符 ':' ,有 ' ' 和'.'两种分隔符,
输出
string strArray;
strArray = put.Trim().ToString().Split(" ".ToCharArray());
如果输入的字符串是 123.1 12.11
那么输出的字符数组strArray = {“123.1”,“12.11”};
split()的第一个参数是“间隔字符串的间隔符”
版权声明:本文为qq_42052038原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。