C# 中 string 的 Split 方法将字符串分隔后返回字符串数组;
Split 有六个重载函数,大概有两类:一类的 separator 为 char[];另一类为 string[]。我们以 string[] 为例讲述它的两个重载函数。
String.Split(string[] separator, StringSplitOptions options);
String.Split(string[] separator, int count, StringSplitOptions options);
String.Split(string[] separator, int count, StringSplitOptions options);
- separator 为分隔字符串的字符串数组,由于是数组,可以同时使用多个“分隔符”了。
- options 有两个值可选:StringSplitOptions.None 分隔后遇到的空字符串要作为数组元素的一项返回;StringSplitOptions.RemoveEmptyEntries 分隔后遇到的空字符串不作为数组元素的一项返回。
- count 分隔后返回的数组的最大长度。
String.Split 方法6个重载函数:
![点击图片可在新窗口打开 程序代码](https://i-blog.csdnimg.cn/blog_migrate/58c53beb33fc757b1f6036e6c94a1479.gif)
1) public string[] Split(params char[] separator)
2) public string[] Split(char[] separator, int count)
3) public string[] Split(char[] separator, StringSplitOptions options)
4) public string[] Split(string[] separator, StringSplitOptions options)
5) public string[] Split(char[] separator, int count, StringSplitOptions options)
6) public string[] Split(string[] separator, int count, StringSplitOptions options)
4) public string[] Split(string[] separator, StringSplitOptions options)
5) public string[] Split(char[] separator, int count, StringSplitOptions options)
6) public string[] Split(string[] separator, int count, StringSplitOptions options)
下边我们通过一些实例来说明下怎么使用(以下string words = "1,2.3,,4";)
1. public string[] Split(params char[] separator)
![点击图片可在新窗口打开 程序代码](https://i-blog.csdnimg.cn/blog_migrate/58c53beb33fc757b1f6036e6c94a1479.gif)
string[] split = words.Split(new Char[] { ',' });//返回:{"1","2.3","","4"}
string[] split = words.Split(new Char[] { ',', '.' });//返回:{"1","2","3","","4"}
string[] split = words.Split(new Char[] { ',', '.' });//返回:{"1","2","3","","4"}
2. public string[] Split(char[] separator, int count)
![点击图片可在新窗口打开 程序代码](https://i-blog.csdnimg.cn/blog_migrate/58c53beb33fc757b1f6036e6c94a1479.gif)
string[] split = words.Split(new Char[] { ',', '.' }, 2);//返回:{"1","2.3,,4"}
string[] split = words.Split(new Char[] { ',', '.' }, 6);//返回:{"1","2","3","","4"}
string[] split = words.Split(new Char[] { ',', '.' }, 6);//返回:{"1","2","3","","4"}
3. public string[] Split(char[] separator, StringSplitOptions options)
![点击图片可在新窗口打开 程序代码](https://i-blog.csdnimg.cn/blog_migrate/58c53beb33fc757b1f6036e6c94a1479.gif)
string[] split = words.Split(new Char[] { ',', '.' }, StringSplitOptions.RemoveEmptyEntries);//返回:{"1","2","3","4"} 不保留空元素
string[] split = words.Split(new Char[] { ',', '.' }, StringSplitOptions.None);//返回:{"1","2","3","","4"} 保留空元素
string[] split = words.Split(new Char[] { ',', '.' }, StringSplitOptions.None);//返回:{"1","2","3","","4"} 保留空元素
4. public string[] Split(string[] separator, StringSplitOptions options)
![点击图片可在新窗口打开 程序代码](https://i-blog.csdnimg.cn/blog_migrate/58c53beb33fc757b1f6036e6c94a1479.gif)
string[] split = words.Split(new string[] { ",", "." }, StringSplitOptions.RemoveEmptyEntries);//返回:{"1","2","3","4"} 不保留空元素
string[] split = words.Split(new string[] { ",", "." }, StringSplitOptions.None);//返回:{"1","2","3","","4"} 保留空元素
5. public string[] Split(char[] separator, int count, StringSplitOptions options)
![点击图片可在新窗口打开 程序代码](https://i-blog.csdnimg.cn/blog_migrate/58c53beb33fc757b1f6036e6c94a1479.gif)
string[] split = words.Split(new Char[] { ',', '.' }, 2, StringSplitOptions.RemoveEmptyEntries);//返回:{"1","2.3,,4"} 不保留空元素
string[] split = words.Split(new Char[] { ',', '.' }, 6, StringSplitOptions.None);//返回:{"1","2","3","","4"} 保留空元素
6. public string[] Split(string[] separator, int count, StringSplitOptions options)
![点击图片可在新窗口打开 程序代码](https://i-blog.csdnimg.cn/blog_migrate/58c53beb33fc757b1f6036e6c94a1479.gif)
string[] split = words.Split(new string[] { ",", "." }, 2, StringSplitOptions.RemoveEmptyEntries);//返回:{"1","2.3,,4"} 不保留空元素
string[] split = words.Split(new string[] { ",", "." }, 6, StringSplitOptions.None);//返回:{"1","2","3","","4"} 保留空元素
string[] split = words.Split(new string[] { ",", "." }, 6, StringSplitOptions.None);//返回:{"1","2","3","","4"} 保留空元素