黑马程序员技术交流社区

标题: [字符串与正则] c#中Split函数的使方法 [打印本页]

作者: SUN_Q    时间: 2013-7-13 22:34
标题: [字符串与正则] c#中Split函数的使方法
Split函数 描述
     返回一个下标从零开始的一维数组,它包含指定数目的子字符串。
语法
    Split(expression[,   delimiter[,   count[,   compare]]])
Split函数语法有如下几部分:
部分描述   
    expression   必需的。包含子字符串和分隔符的字符串表达式   。如果expression是一个长度为零的字符串( " "),Split则返回一个空数组,即没有元素和数据的数组。   
    delimiter   可选的。用于标识子字符串边界的字符串字符。如果忽略,则使用空格字符( "   ")作为分隔符。如果delimiter是一个长度为零的字符串,则返回的数组仅包含一个元素,即完整的   expression字符串。   
    count   可选的。要返回的子字符串数,–1表示返回所有的子字符串。   
    compare   可选的。数字值,表示判别子字符串时使用的比较方式。关于其值,请参阅“设置值”部分。   
设置值
compare参数的设置值如下:
    常数值描述   
    vbUseCompareOption   –1   用Option   Compare语句中的设置值执行比较。   
    vbBinaryCompare   0   执行二进制比较。   
    vbTextCompare   1   执行文字比较。   
    vbDatabaseCompare   2   仅用于Microsoft   Access。基于您的数据库的信息执行比较。

1.用单字符截取方式,如下:

普通浏览复制代码保存代码打印代码

string str1="xuejiehome.com,<a href=\"http://www.xuejiehome.com\" target=\"_blank\">www.xuejiehome.com</a>,ask.xuejiehome.com";<br />string [] str=str1.split(','); //得到一个str的数组{"xuejiehome.com","www.xuejiehome.com","ask.xuejiehome.com"}<br />foreach(string s in str)<br />{<br />    Response.Write(s+"<br />");<br />}<br />//输出结果:<br />// xuejiehome.com<br />// <a href=\"http://www.xuejiehome.com\" target=\"_blank\">www.xuejiehome.com</a><br />// ask.xuejiehome.com


2.也可用多个字符来截取,如下:

普通浏览复制代码保存代码打印代码

string str2="1,2,3,4.5.6.7";<br />string strM=str2.Split(new char[2]{',','.'});<br />foreach(string var in strM){<br />    Response.Write(var + "<br />");<br />}<br />//输出结果:<br />//1<br />//2<br />//3<br />//4<br />//5<br />//6<br />//7


当然你把char换成STring也是一样的
如下

普通浏览复制代码保存代码打印代码

  string str2 = "1,2,3,4.5.6.7";<br />            string[] strM = str2.Split(new string[] { ",", "." }, StringSplitOptions.RemoveEmptyEntries);<br />}


这样得到的是一 个数组的方式,也是很方便 的一种
3.也可以用System.Text.RegularExpressions(框架中的正则表达式来根据字符串截取)如:

普通浏览复制代码保存代码打印代码

string str3="helloMrZhanghelloMissLihelloMrZhao";<br />string[] strName= System.Text.RegularExpressions.Regex.Split(str3,"hello",System.Text.RegularExpressions.RegexOptions.IgnoreCase);<br />foreach(string var in strName)<br />{<br />    Response.Write(var+"<br />");<br />}<br />//结果<br />//MrZhang<br />//MissLi<br />//MrZhao



作者: zhangcheng5468    时间: 2013-7-14 09:57
老帖子啦




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2