C 中的Split 函式

2021-08-09 06:32:59 字數 4110 閱讀 3363

一、string.split方法提供了如下6個過載函式: 名稱

說明string.split (char)

返回包含此例項中的子字串(由指定 char 陣列的元素分隔)的 string 陣列。 由 .net compact framework 支援。

string.split (char, int32)

返回包含此例項中的子字串(由指定 char 陣列的元素分隔)的 string 陣列。引數指定返回的子字串的最大數量。

string.split (char, stringsplitoptions)

返回包含此字串中的子字串(由指定的 char 陣列的元素分隔)的 string 陣列。引數指定是否返回空陣列元素。

string.split (string, stringsplitoptions)

返回包含此字串中的子字串(由指定的 string 陣列的元素分隔)的 string 陣列。引數指定是否返回空陣列元素。

string.split (char, int32, stringsplitoptions)

返回包含此字串中的子字串(由指定的 char 陣列的元素分隔)的 string 陣列。引數指定要返回子字串的最大數量,以及是否要返回空陣列元素。

string.split (string, int32, stringsplitoptions)

返回包含此字串中的子字串(由指定的 string 陣列的元素分隔)的 string 陣列。引數指定要返回子字串的最大數量,以及是否要返回空陣列元素。

以下詳細舉例說明:

1.string.split(char)

string str = "aaatbbscctdd";

string strarray = str.split(new char); 或string strarray = str.split('t'); //單字元切割(result : "aaa"  "bbscc"  "dd")

string strarray = str.split(new char); //多位元組切割(result : "aaa" "bb" "cc" "dd")

2.string.split(char,int32)

string str = "aaatbbscctdd";

string strarray = str.split(new char);//只切割成2份(result :"aaa" "bbscctdd")

3.string.split(char,stringsplitoptions)

string str = "aaatbbscctddt";

string strarray = str.split(new char);//去除空元素(result :"aaa" "bbscc" "dd")

string strarray = str.split(new char);//保留空元素(result :"aaa" "bbscc" "dd" 「」) 

4.string.split(string,stringsplitoptions)

string str = "aaatbbscctddt";

string strarray = str.split(new string);//去除空元素(result :"aaa" "bbscc" "dd")

string strarray = str.split(new string);//保留空元素(result :"aaa" "bbscc" "dd" 「」) 

5.string.split(char,int32,stringsplitoptions)

string str = "aaatbbscctddt";

string strarray = str.split(new char);//切割成2份且去除空元素(result :"aaa" "bbscctddt")

string strarray = str.split(new char);//切割成2份且保留空元素(result :"aaa" "bbscctddt" 「」)

6.string.split(string,int32,stringsplitoptions)

string str = "aaatbbscctddt";

string strarray = str.split(new string);//切割成2份且去除空元素(result :"aaa" "bbscctddt")

string strarray = str.split(new string);//切割成2份且保留空元素(result :"aaa" "bbscctddt" 「」)

二、正則匹配拆分字串提供了5個過載函式: 名稱

說明regex.split (string)

在由 regex 建構函式中指定的正規表示式模式定義的位置拆分指定的輸入字串。 由 .net compact framework 支援。

regex.split (string, int32)

在由 regex 建構函式中指定的正規表示式定義的位置,將指定的輸入字串拆分指定的最大次數。 由 .net compact framework 支援。

regex.split (string, string)

在由正規表示式模式定義的位置拆分輸入字串。 由 .net compact framework 支援。

regex.split (string, int32, int32)

從輸入字串中的指定字元位置開始,在由 regex 建構函式中指定的正規表示式定義的位置,將指定的輸入字串拆分指定的最大次數。 由 .net compact framework 支援。

regex.split (string, string, regexoptions)

在由指定的正規表示式模式定義的位置拆分輸入字串。可指定選項來修改匹配的行為。 由 .net compact framework 支援。

using system.text.regularexpressions;

1.regex.split(string,string)

string str = "aaatsbbtscctsdd";

stirng strarray = regex.split(str,"ts");  //正則匹配切割(result: "aaa" "bb" "cc" "dd");

2.regex.split(string,string)

string str = "aaatsbbtscctsdd";

stirng strarray = regex.split(str,"ts",regexoptions.ignorecase);  //正則匹配切割(result: "aaa" "bb" "cc" "dd");

三、應用

1.單字元拆分

string str = "aaatbbscctdd";

string strarray = str.split(new char); 或string strarray = str.split('t'); //單字元切割(result : "aaa"  "bbscc"  "dd")

2.多字元拆分

string str = "aaatbbscctdd";

string strarray = str.split(new char); //多位元組切割(result : "aaa" "bb" "cc" "dd")

3.字串拆分

using system.text.regularexpressions;

string str = "aaatsbbtscctsdd";

stirng strarray = regex.split(str,"ts",regexoptions.ignorecase);  //正則匹配切割且(result: "aaa" "bb" "cc" "dd");

或者string str = "aaatsbbtscctsdd";

string strarray = str.split(new string);  //字串切割(result : "aaa" "bb" "cc" "dd")

注意:

1.string.split方法沒有過載string.split(stirng )方法,也就是說str.split("t")或者str.split(new string)都是錯誤的。

2.除了切割單字元可用string.split('t')外,其它的都必須用string.split(new char{})這樣的格式,否則編譯會出錯

C 中的Split 函式

一 string.split方法提供了如下6個過載函式 名稱說明 string.split char 返回包含此例項中的子字串 由指定 char 陣列的元素分隔 的 string 陣列。由 net compact framework 支援。string.split char,int32 返回包含此例...

c 中Split函式的使方法

split函式 描述 返回乙個下標從零開始的一維陣列,它包含指定數目的子字串。語法 split expression delimiter count compare split函式語法有如下幾部分 部分描述 expression 必需的。包含子字串和分隔符的字串表示式 如果expression是乙個...

opencv中的split函式

split函式的功能是通道分離 原型void split const mat src,mat mvbegin void split inputarray m,outputarrayofarrays mv 用法很顯然,第乙個引數為要進行分離的影象矩陣,第二個引數可以是mat陣列的首位址,或者乙個vec...