编程语言

img zjh135

如何以Char数组字符元素为标识,分割String字符并列示出来?

发表于2004/10/8 9:02:00  1458人阅读

分类: c#

如何以Char数组字符元素为标识,分割String字符并列示出来?

       作者:成都.张均洪


    国庆节大家玩的高兴吧
!节日期间,还好有时间去书店买了本新书看看,这本书叫<<C#设计模式>>,其中有节叫分析字符串的类”,对其所提供的方法对于一些高手来说也许算不了什么,可对于象我这样的新手来说真是受益不少啊,所以我提出了这个问题作为主题来讨论,也让大家分享一下.

        我们先来看看ToCharArray()Split()这两个方法,因为它与本问题相关.

先看ToCharArray()方法,它是将此实例中的字符复制到 Unicode 字符数组,它属于String类的方法,能够把字符串返向转换为一个字符数组,比如:

    string str=”this is”;

    Char[] arr;

    arr=str.ToCharArray();//把"this is string”以单个字符分开,成为Char数组的元素

    如果我们要输出看一下(假设有个listox控件)方法如下:

    foreach(char[] c in arr)

    {

       Listbox1.Items.Add(c.ToString());

}

的结果是这样的:

T

H

I

S

 

I

S

看看这个结果,可以明白包括空格在内都被分开成了char数组的元素.

我们再来看看Split()方法:

Split()方法是标识此实例中的子字符串(它们由数组中指定的一个或多个字符进行分隔),然后将这些子字符串放入一个 String 数组中。

它有两个重载版本:

public string[] Split(params char[]);

public string[] Split(char[], int);

我们讲第一个版本,后一个版本在MSDN中有解释.

它的参数是一个Char[]数组,也就是以Char[]中的元素作为分割的标识,分割后的结果存入string[]数组中,我们来举个例:

String strA=”what is this?,oh,orange!”;

String[] arStr;

arStr=strA.Split(str.ToCharArray());//str是我们前面定义了的”this is”

这时arStr[]数组中的元素就是由str中的7个字符为标识分割strA字符后产生的元素

我们来看一下结果如例:

Foreach(string cc in arStr)

{

    Listox1.Items.Add(cc.ToString());

}

结果就是:

Wa

 

 

 

?,o

,orange!

string[]数组arStr中凡是有arr数组中元素的字符都不会出现,因为它被用作分割标识符了.

       至此,大家可能明白了字符的分割与数组的关系了,如果是,我就满足了!

阅读全文
0 0

相关文章推荐

img
取 消
img