C#中Split分隔字符串的应用

79 阅读2分钟

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() + "
");

输出结果:
aaa

bbb

ccc

2、用多个字符来分隔:
string str="aaajbbbscccjdddseee";
string[] sArray=str.Split(new char[2]{'j','s'}); 
foreach(string i in sArray) Response.Write(i.ToString() + "
"); 

输出结果:
aaa
bbb
ccc
ddd
eee

3、用单个字符来分隔:

string str="aaajbbbjccc";

string[] sArray=str.Split('j');
foreach(string i in sArray) Response.Write(i.ToString() + "
");

 

输出结果:
aaa
bbb
ccc

 

▲注:string[] arr = str.Split("o");          

🔺这是一个具有语法错误的语句,Split 的 separator 参数应该是 char[] 或 string[],不应是字符串。

String.Split方法没有重载String.Split(stirng [])方法,也就是说str.Split("o")或者str.Split(new string[]{"ts","dd"})都是错误的。正确的示例:

string str = "technology";
char[] separator = { 'o' };
string[] arr = str.Split(separator);

 

a、String.Split方法提供了如下6个重载函数:

1)、String.Split (Char[]):返回包含此实例中的子字符串(由指定 Char 数组的元素分隔)的 String 数组。由 .NET Compact Framework 支持。

2)、String.Split (Char[], Int32):返回包含此实例中的子字符串(由指定 Char 数组的元素分隔)的 String 数组。参数指定返回的子字符串的最大数量。

3)、String.Split (Char[], StringSplitOptions):返回包含此字符串中的子字符串(由指定的 Char 数组的元素分隔)的 String 数组。参数指定是否返回空数组元素。

4)、String.Split (String[], StringSplitOptions):返回包含此字符串中的子字符串(由指定的 String 数组的元素分隔)的 String 数组。参数指定是否返回空数组元素。

5)、String.Split (Char[], Int32, StringSplitOptions):返回包含此字符串中的子字符串(由指定的 Char 数组的元素分隔)的 String 数组。参数指定要返回子字符串的最大数量,以及是否要返回空数组元素。

6)、String.Split (String[], Int32, StringSplitOptions):返回包含此字符串中的子字符串(由指定的 String 数组的元素分隔)的 String 数组。参数指定要返回子字符串的最大数量,以及是否要返回空数组元素。

 

b、正则匹配拆分字符串提供了5个重载函数:

1)、Regex.Split (String):在由 Regex 构造函数中指定的正则表达式模式定义的位置拆分指定的输入字符串。由 .NET Compact Framework 支持。

2)、Regex.Split (String, Int32):在由 Regex 构造函数中指定的正则表达式定义的位置,将指定的输入字符串拆分指定的最大次数。由 .NET Compact Framework 支持。

3)、Regex.Split (String, String):在由正则表达式模式定义的位置拆分输入字符串。由 .NET Compact Framework 支持。

4)、Regex.Split (String, Int32, Int32):从输入字符串中的指定字符位置开始,在由 Regex 构造函数中指定的正则表达式定义的位置,将指定的输入字符串拆分指定的最大次数。由 .NET Compact Framework 支持。

5)、Regex.Split (String, String, RegexOptions):在由指定的正则表达式模式定义的位置拆分输入字符串。可指定选项来修改匹配的行为。由 .NET Compact Framework 支持。