String類的split方法

2021-05-21 22:42:31 字數 2256 閱讀 6925

雖然使用正規表示式能很好的進行字串的解析、提取、替換,但是對於一些簡單的應用,使用

string

類提供的一些方法就可以很好的完成,最突出的就是

split

方法。split

方法能夠很方便的將字串按照一定的規則拆分開。

比如對於下面的字串:

tom,jane,tony,elva,gigi

只要呼叫如下的**就可以將各個名字提取出來:

string value = "tom,jane,tony,elva,gigi";

string names = value.split(",");

for(int i=0,n=names.length;i

執行結果:

tom

jane

tony

elva

gigi

看到這個執行結果,很多人都認為

split

方法就是按照給定的字串對字串進行拆分,知道碰到了下面的問題。

有乙個字串:中國

. 北京

. 海淀

. 學院路。請解析此字串,並列印輸出「中國

北京海淀

學院路」。

於是寫**如下:

string value = "

中國.

北京.

海淀.

學院路";

string names = value.split(".");

for(int i=0,n=names.length;i

執行結果:

對,沒看錯!沒有任何輸出!

讓我們來看看

split

方法的方法簽名吧:

public string split(string regex)

這裡的引數的名稱是

regex

,也就是

regular expression

(正規表示式)。這個引數並不是乙個簡單的分割用的字元,而是乙個正規表示式,看了

split

方法的實現**就更堅定了我們的信心:

public string split(string regex, int limit)

split

的實現直接呼叫的

matcher

類的split

的方法。讀者已經知道,「

. 」在正規表示式中有特殊的含義,因此我們使用的時候必須進行轉義。

修改**如下:

private static void split2() }

執行結果:中國

北京海淀

學院路單個字元分割

string s="abcdeabcdeabcde"; 

string sarray=s.split('c'); 

foreach(string i in sarray) 

console.writeline(i.tostring()); 

輸出下面的結果

:ab 

deab 

deab 

de多個字元分割

string s="abcdeabcdeabcde 

string sarray1=s.split(new char[3]); 

foreach(string i in sarray1) 

console.writeline(i.tostring()); 

可以輸出下面的結果:

ab ab 

ab多個字元分割(

正規表示式

string content="agcsmallmacsmallgggsmallytx"; 

stringresultstring=regex.split(content,"small",regexoptions.ignorecase) 

foreach(string i in resultstring) 

console.writeline(i.tostring()); 

輸出下面的結果

:agc 

mac 

ggg 

ytx例項:

intitemnoold = int32.parse(valold.split(new

char )[0]);

String類中split方法

string類中split方法 split 你需要分割字串的,分割的總個數 該方法使用正規表示式的底層完成對字串的分割 使用的案例 1 string s women,sksk,k,k,k,k,3 23 4for string s1 s.split 7 該執行結果是 women skskkk kk注意...

String類中split方法的使用

split 方法 將乙個字串分割為子字串,然後將結果作為字串陣列返回。stringobj.split separator limit 引數 stringobj 被分解的 string物件或文字。該物件不會被 split 方法修改。separator 可選項 字串或正規表示式物件,它標識了分隔字串時使...

String神奇的split方法

size medium string的split方法的使用 今天我用的了string的split方法,我起初都是使用的是乙個引數的方法,今天發現有兩個引數的,看了一下api,開始感覺有點蒙,後來看了一下它 的例子,還在網上看了一些資料,後來我就理解了這個。這個函式接收兩個引數,它的宣告是下面的樣子 ...