C#中Split用法

C#中Split用法

1、用字符串分隔: 

输出结果:


2、用多个字符来分隔:
输出结果:

3、用单个字符来分隔:
输出结果:

 
string[] arr = str.Split("o");
        这是一个具有语法错误的语句,Split 的 separator 参数应该是 char[] 或 string[],不应是字符串。正确的示例:
string str = "technology";
char[] separator = { 'o' };
string[] arr = str.Split(separator);

        String.Split 方法有6个重载函数:
程序代码
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)
        下边我们通过一些实例来说明下怎么使用(以下string words = "1,2.3,,4";):
1. public string[] Split(params char[] separator)
程序代码:
        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)
程序代码
        string[] split = words.Split(new Char[] { ',', '.' }, 2);  //返回:{"1","2.3,,4"}
        string[] split = words.Split(new Char[] { ',', '.' }, 6);  //返回:{"1","2","3","","4"} 
3. public string[] Split(char[] separator, StringSplitOptions options)
程序代码
        string[] split = words.Split(new Char[] { ',', '.' }, StringSplitOptions.RemoveEmptyEntries);  //返回:{"1","2","3","4"} 不保留空元素
        string[] split = words.Split(new Char[] { ',', '.' }, StringSplitOptions.None);  //返回:{"1","2","3","","4"} 保留空元素 
4. public string[] Split(string[] separator, StringSplitOptions options)
程序代码
        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)
程序代码
        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)
程序代码
        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"} 保留空元素
需要注意的是没有重载函数public string[] Split(string[] separator),所以我们不能像VB.NET那样使用words.Split(","),而只能使用words.Split(',').

转载于:https://www.cnblogs.com/crazygolf/p/3856651.html

### C# 中 `string.Split` 方法详解 #### 基本语法 在C#中,`Split` 是 `System.String` 类的一个实例方法。此方法用于按照指定的分隔符将字符串拆分成子串数组。 ```csharp public string[] Split(params char[] separator); ``` 该函数接受一个参数列表形式的字符数组作为分隔符[^1]。 #### 处理复杂情况下的分割操作 对于更复杂的场景,可以传递额外选项控制如何处理空白项: ```csharp using System; class Program { static void Main() { string input = "one,two;three four|five"; char[] separators = new char[] { ',', ';', ' ', '|' }; // 移除空条目并执行分割 string[] result = input.Split(separators, StringSplitOptions.RemoveEmptyEntries); Console.WriteLine("Using String.Split:"); foreach (var item in result) { Console.WriteLine(item); } } } ``` 上述代码展示了当遇到多种不同类型的分隔符时应采取的方式,并通过设置枚举成员 `StringSplitOptions.RemoveEmptyEntries` 来忽略任何长度为零的结果项[^2]。 #### 单一分割符号的应用案例 如果只需要依据单一字符来进行简单切割,则可以直接传入单个字符而无需创建显式的字符数组: ```csharp class SimpleSplitExample { static void Main() { string str = "长亭外-古道边-芳草碧连天"; var parts = str.Split('-'); foreach (var part in parts){ Console.WriteLine(part); } Console.ReadLine(); } } ``` 这段程序说明了仅需提供一个特定字符即可完成基本的字符串切片工作[^3]。 #### 应对特殊输入情形 值得注意的是,在某些情况下可能会接收到含有连续分隔符或其他异常模式的数据流;此时应当考虑这些特殊情况以确保逻辑正确无误: ```csharp // 示例:处理可能存在的多余逗号或空格 string words = "1,2.3,,4"; char[] delimiters = {','}; // 返回 {"1", "2.3", "", "4"} string[] splitResult = words.Split(delimiters); foreach(var element in splitResult){ Console.WriteLine($"Element: '{element}'"); } ``` 这里展示了一个例子,其中原始字符串包含了相邻而不带有效内容之间的分隔符[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值