c#截取字符串的方法Substring()
C#截图字符串常用的方法有 split 、Substring、Replace、remove等。 split的使用:?? 1. Split( Char ())? ? ? 返回的字符串数组包含此实例中的子字符串(由指定 Unicode 字符数组的元素分隔)。 ? ? 根据单个分隔字符用split截取。? ? ? 例如 复制代码代码如下:? ?1?string?st="GT123_1";?2?string[] sArray=st.Split(‘_’);//?一定是单引?? ? ? 即可得到sArray[0]="GT123",sArray[1]="1";? 2.利用多个字符来分隔字符串? ? ? 例如 复制代码代码如下:? 1 string str = "GTAZB_JiangjBen_123"; 2 string[] sArray = str.Split(new char[2] { ‘j‘,‘_‘ }); 3 foreach(string e in sArray) 4 { Console.WriteLine(e); } ? ? 得到sArray[0]="GTAZB",sArray[1]="Jiang",sArray[2]="Ben",sArray[3]="123";? 3.Split( String (),StringSplitOptions)? ? ?返回的字符串数组包含此字符串中的子字符串(由指定字符串数组的元素分隔)。参数指定是否返回空数组元素。 ? ? ? ? ? ? RemoveEmptyEntries表示要省略返回的数组中的空数组元素? ? ?根据字符串或字符串组来截取字符串? ? ?例如 复制代码代码如下:? 1 string str = "GTAZB_JiangjBen_123"; 2 string[] sArray = str.Split( new string[]{"Ji","jB"},StringSplitOptions.RemoveEmptyEntries); 3 foreach(string e in sArray) 4 { Console.WriteLine(e); } ? ?得到sArray[0]="GTAZB_",sArray[1]="ang",sArray[2]="en_123";? ?其他: public string[] Split(params char[] separator) ? Substring的使用:? 1. Substring(Int32,Int32)? ? ?从此实例检索子字符串。子字符串从指定的字符位置开始且具有指定的长度。? ? ?提取字符串中的第i个字符开始的长度为j的字符串;? ? ?例如 复制代码代码如下: 1 string str = "GTAZB_JiangjBen_123"; 2 int start=3,length=8; 3 Console.WriteLine(str.Substring(start-1,length)); 4 //输出得到 AZB_Jian。 5 6 7 string vstr="123456789|"; 8 Console.WriteLine(str.Substring(0,vstr.length-1)); 9 //输出得到 123456789。 ? 2. Substring(Int32)? ? ?从此实例检索子字符串。子字符串从指定的字符位置开始。? ? ?提取字符串中右数长度为i的字符串? ? ?复制代码代码如下:? 1 string str = "GTAZB_JiangjBen_123"; 2 string tSt; int i=5; 3 tSt = str.Substring(str.Length - i); 4 Console.WriteLine(tSt); ? ?输出n_123;? ? Replace的使用:? 1. Replace(String,String)? ? ?返回一个新字符串,其中当前实例中出现的所有指定字符串都替换为另一个指定的字符串。? ? ?替换字符串中的特定字符串? ? ?复制代码代码如下:? 1 string str = "GTAZB_JiangjBen_123"; 2 string tSt; 3 tSt = str.Replace("123","321"); 4 Console.WriteLine(tSt); ? ?输出GTAZB_JiangjBen_321? 2. 删除字符串中的特定字符串Jiangj? ? ?复制代码代码如下:? 1 string str = "GTAZB_JiangjBen_123"; 2 string tSt; tSt = str.Replace("Jiangj",""); 3 Console.WriteLine(tSt); ? ?输出GTAZB_Ben_123? 3. Replace(Char,Char)? 返回一个新字符串,其中此实例中出现的所有指定 Unicode 字符都替换为另一个指定的 Unicode 字符。? 下面的示例将一系列数字之间的空白替换为逗号,从而创建以逗号分隔的值列表。 1 public static void Main() 2 { 3 string str = "1 2 3 4 5 6 7 8 9"; 4 Console.WriteLine("Original string: "{0}"",str); 5 Console.WriteLine("CSV string: "{0}"",str.Replace(‘ ‘,‘,‘)); 6 } ? ??输出: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)的字符串? ? ?复制代码代码如下:? 1 string str = "GTAZB_JiangjBen_123"; 2 int i=5,length=8; 3 str=str.remove(i,length); 4 console.writeline(str); ? ?输出GTAZBen_123。? 2. Remove(Int32)? ? ?删除此字符串中从指定位置到最后位置的所有字符。? 1 string s = "abc---def"; 2 Console.WriteLine("{0}",s.Remove(3)); ? ?输出:abc https://www.cnblogs.com/felix-wang/p/7323767.html 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 案例: string oriString = "Hello,Kitty!"; //原始字符串 string?subString; subString = oriString.Substring(0,2); //从第一个字符开始,截取2个字符 Console.WriteLine(subString); //输出:He ?subString = oriString.Substring(2,3); //从第一个‘l’开始,截取3个字符 Console.WriteLine(subString);?//输出:llo 。。。。。。。。。。。。。。。。。。。。。总结 包含开始,不包含结束比如 开始2 长度3 即从第2到第5个字符,包含开始的di2个字符,不包含结束的第5个字符。。。。。。。 经常用的案例: string str="123abc456"; ************************************************ 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); https://www.cnblogs.com/zoujinhua/p/10584724.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |