首頁 > 軟體

C# Split函數根據特定分隔符分割字串的操作

2020-12-07 18:02:27

在C#程式開發過程中,很多時候可能需要將字串根據特定的分割字元分割成字元或者List集合,例如根據逗號將字串分割為陣列,或者根據豎線將字串分割成陣列,C#中提供了Split()函數來快速將字串分割成陣列形式,如果需要轉換為List集合,可在分割完成後使用陣列的ToList()方法即可轉換為List集合資料。

例如下列例子,將字元str按照逗號分隔成陣列。

string str = "A,B,C,D,E,F,G";

string[] strArr = str.Split(',');//根據逗號分隔字串str

分隔完成之後的得到的陣列strArr,取值為

strArr[0]="A",strArr[1]="B",strArr[2]="C",strArr[3]="D",strArr[4]="E",strArr[5]="F"

在有些業務需求裡面,可能要求將字串按照特定的字元分隔為List集合,可在上述的基礎上加個ToList即可實現,實現語句如下:

List<string> strList = str.Split(',').ToList();

補充知識:C#實現字串按多個字元採用Split方法分割得到陣列

String字串如何按多個字元採用Split方法進行分割呢?本文提供VS2005和VS2003的實現方法,VS2005可以用下面的方法:

string agentInfo = userInfo.Attribute19.ToString();
      string[] myAgent = agentInfo.Split(new string[] { "$#$" }, StringSplitOptions.None);
      if (myAgent.Length == 3)
      {
        this.QLookUpMyAgent.Text = myAgent[0].ToString();
        this.QCalenderStartDate.Value = myAgent[1].ToString();
        this.QCalenderEndDate.Value = myAgent[2].ToString();
      }

VS2003下用下面的方法:

1、用字串分隔:

using System.Text.RegularExpressions; 
string str="aaajsbbbjsccc";
string[] sArray=Regex.Split(str,"js",RegexOptions.IgnoreCase);
foreach (string i in sArray) Response.Write(i.ToString() + "<br>");

輸出結果:

aaa

bbb

ccc

2、用多個字元來分隔:

string str="aaajbbbscccjdddseee";
string[] sArray=str.Split(new char[2]{'j','s'});
foreach(string i in sArray) Response.Write(i.ToString() + "<br>");

輸出結果:

aaa

bbb

ccc

ddd

eee

3、用單個字元來分隔:

string str="aaajbbbjccc";
string[] sArray=str.Split('j');
foreach(string i in sArray) Response.Write(i.ToString() + "<br>");

輸出結果:

aaa

bbb

ccc

以上這篇C# Split函數根據特定分隔符分割字串的操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com