1、用String.Split 函数时,若间隔符为单个字符,就没有问题了 String.Split('|') 。
引用
演示:
===============
string strBreak = "|";
string str= "111"+ strBreak +"222"+ strBreak +"333"+ strBreak +"444";
string[] arr1=str.Split('|') ;
foreach(string i in arr1)
Response.Write( i.ToString() +"
\n");
结果(符合要求)
===============
111
222
333
444
2、若间隔字符为多个字符,情况就不同了,其结果并不是我们所希望看到的
引用
演示:
===============
string strBreak = "||";
string str= "111"+ strBreak +"222"+ strBreak +"333"+ strBreak +"444";
char[] arrChr = strBreak.ToCharArray();
string[] arr1=str.Split(arrChr) ;
//string[] arr1=str.Split(new char[2]{'|','|'}) ;//或者这样写
foreach(string i in arr1)
Response.Write( i.ToString() +"
\n");
结果(有几个字符就会打印几个
,不符合要求)
===============
111
222
333
444
3、用正则来处理多字符的情况。
引用
演示:
===============
string strBreak = "||";
string str= "111"+ strBreak +"222"+ strBreak +"333"+ strBreak +"444";
string[] arr1=Regex.Split(str,@"\|\|",RegexOptions.IgnoreCase);
//string[] arr1=Regex.Split(str,"\\u007C\\u007C",RegexOptions.IgnoreCase); //也可以用 \\u007C 替代特殊字符 |
foreach(string i in arr1)
Response.Write( i.ToString() +"
\n");
结果(符合要求)
===============
111
222
333
444
本文作者:拍拍尘土 来源:http://blog.tao123.com/
CIO之家 www.ciozj.com 微信公众号:imciow