c# 擷取字串
split的使用:
1. Split( Char ())
返回的字串陣列包含此例項中的子字串(由指定 Unicode 字元陣列的元素分隔)。
根據單個分隔字元用split擷取。
例如 複製程式碼程式碼如下:
string st="GT123_1";
string[] sArray=st.Split(‘_’);// 一定是單引
即可得到sArray[0]="GT123",sArray[1]="1";
2.利用多個字元來分隔字串
例如 複製程式碼程式碼如下:
string str = "GTAZB_JiangjBen_123";
string[] sArray = str.Split(new char[2] { 'j', '_' });
foreach(string e in sArray)
{ Console.WriteLine(e); }
得到sArray[0]="GTAZB",sArray[1]="Jiang",sArray[2]="Ben",sArray[3]="123";
3.Split( String (), StringSplitOptions)
返回的字串陣列包含此字串中的子字串(由指定字串陣列的元素分隔)。引數指定是否返回空陣列元素。 RemoveEmptyEntries表示要省略返回的陣列中的空陣列元素
根據字串或字串組來擷取字串
例如 複製程式碼程式碼如下:
string str = "GTAZB_JiangjBen_123";
string[] sArray = str.Split( new string[]{"Ji","jB"}, StringSplitOptions.RemoveEmptyEntries);
foreach(string e in sArray)
{ Console.WriteLine(e); }
得到sArray[0]="GTAZB_",sArray[1]="ang",sArray[2]="en_123";
Replace的使用:
1. Replace(String, String)
返回一個新字串,其中當前例項中出現的所有指定字串都替換為另一個指定的字串。
替換字串中的特定字串
複製程式碼程式碼如下:
string str = "GTAZB_JiangjBen_123";
string tSt;
tSt = str.Replace("123","321");
Console.WriteLine(tSt);
輸出GTAZB_JiangjBen_321
2. 刪除字串中的特定字串Jiangj
複製程式碼程式碼如下:
string str = "GTAZB_JiangjBen_123";
string tSt; tSt = str.Replace("Jiangj","");
Console.WriteLine(tSt);
輸出GTAZB_Ben_123
3. Replace(Char, Char)
返回一個新字串,其中此例項中出現的所有指定 Unicode 字元都替換為另一個指定的 Unicode 字元。
下面的示例將一系列數字之間的空白替換為逗號,從而建立以逗號分隔的值列表。
public static void Main()
{
string str = "1 2 3 4 5 6 7 8 9";
Console.WriteLine("Original string: \"{0}\"", str);
Console.WriteLine("CSV string: \"{0}\"", str.Replace(' ', ','));
}
輸出:Original string: "1 2 3 4 5 6 7 8 9"
CSV string: "1,2,3,4,5,6,7,8,9"
remove的使用:
1. Remove(Int32, Int32)
從此例項中的指定位置開始刪除指定數目的字元。
刪除指定位置(第i個)的指定長度(length)的字串
複製程式碼程式碼如下:
string str = "GTAZB_JiangjBen_123";
int i=5,length=8;
str=str.remove(i, length);
console.writeline(str);
輸出GTAZBen_123。
2. Remove(Int32)
刪除此字串中從指定位置到最後位置的所有字元。
string s = "abc---def";
Console.WriteLine("{0}", s.Remove(3));
輸出:abc
--------------------- 本文來自 一蓑煙雨1989 的CSDN 部落格 ,全文地址請點選:https://blog.csdn.net/wangshubo1989/article/details/46905881?utm_source=copy
String.SubString(int index,int length) index:開始位置,從0開始 length:你要取的子字串的長度
string str="123abc456"; int i=3; 1 取字串的前i個字元 str=str.Substring(0,i); // or str=str.Remove(i,str.Length-i); 2 去掉字串的前i個字元: str=str.Remove(0,i); // or str=str.Substring(i); 3 從右邊開始取i個字元: str=str.Substring(str.Length-i); // or str=str.Remove(0,str.Length-i); 4 從右邊開始去掉i個字元: str=str.Substring(0,str.Length-i); // or str=str.Remove(str.Length-i,i); 5 判斷字串中是否有"abc" 有則去掉之 using System.Text.RegularExpressions; string str = "123abc456"; string a="abc"; Regex r = new Regex(a); Match m = r.Match(str); if (m.Success) { //下面兩個取一種即可。 str=str.Replace(a,""); Response.Write(str); string str1,str2; str1=str.Substring(0,m.Index); str2=str.Substring(m.Index+a.Length,str.Length-a.Length-m.Index); Response.Write(str1+str2); } 6 如果字串中有"abc"則替換成"ABC" str=str.Replace("abc","ABC");
************************************************
string str="adcdef"; int indexStart = str.IndexOf("d");
int endIndex =str.IndexOf("e");
string toStr = str.SubString(indexStart,endIndex-indexStart);
c#擷取字串最後一個字元的問題!
str1.Substring(str1.LastIndexOf(",")+1);
C# 擷取字串最後一個字元
k = k.Substring(k.Length-1, 1);