C#中split用法

1、用字符串分隔: 
using System.Text.RegularExpressions;
 
string str="aaajsbbbjsccc";

string[] sArray=Regex.Split(str,"js",RegexOptions.IgnoreCase);

foreach (string i in sArray) Response.Write(i.ToString() + "<br>");

输出结果:
aaa
bbb
ccc
 

2、用多个字符来分隔:

string str="aaajbbbscccjdddseee";

   string[] sArray=str.Split(new char[]{'j','s'}); 

foreach(string i in sArray) Response.Write(i.ToString() + "<br>"); 

输出结果:
aaa
bbb
ccc
ddd
eee
 

3、用单个字符来分隔:

string str="aaajbbbjccc";

string[] sArray=str.Split('j');

foreach(string i in sArray) Response.Write(i.ToString() + "<br>");

输出结果:
aaa
bbb
ccc
 
Split重载方法:
        1.public string[] Split(params char[] separator);
        2.public string[] Split(char[] separator, int count);

        3.[ComVisible(false)]
        public string[] Split(char[] separator, StringSplitOptions options);    
        4.[ComVisible(false)]
           public string[] Split(string[] separator, StringSplitOptions options);
        5.[ComVisible(false)]
           public string[] Split(char[] separator, int count, StringSplitOptions options);
        6.[ComVisible(false)]
           public string[] Split(string[] separator, int count, StringSplitOptions options);
 
        StringSplitOptions options:前后有空项时是否返回空项
        如:/2008/1/1    以‘/’分割
               1)StringSplitOptions.None                                  返回 空  2008 1 1
               2)StringSplitOptions.RemoveEmptyEntries    返回 2008 1 1
        int count:返回分割的项目数
### 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、付费专栏及课程。

余额充值