截取字符串
Posted Prozkb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了截取字符串相关的知识,希望对你有一定的参考价值。
C#截图字符串常用的方法有 split 、Substring、Replace、remove等。
byte[] bytes = System.Text.Encoding.GetEncoding("GB2312").GetBytes(goodsname); if (bytes.Length > 50) { byte[] temp = new byte[50]; Array.Copy(bytes, 0, temp, 0, 50); prodname.InnerText = Encoding.Default.GetString(temp); }
split的使用:
1. Split( Char ())
返回的字符串数组包含此实例中的子字符串(由指定 Unicode 字符数组的元素分隔)。 根据单个分隔字符用split截取。 例如 复制代码代码如下: string st="GT123_1"; string[] sArray=st.Split(‘_’);// 一定是单引 即可得到sArray[0]="GT123",sArray[1]="1";
2.利用多个字符来分隔字符串
1 string str = "GTAZB_JiangjBen_123"; 2 3 string[] sArray = str.Split( new char[2] { 4 \'j\', \'_\' 5 } ); 6 7 foreach ( string e in sArray ) 8 9 { 10 Console.WriteLine( e ); 11 } 12 13 得到sArray[0] = "GTAZB", sArray[1] = "Jiang", sArray[2] = "Ben", sArray[3] = "123";
3.Split( String (), StringSplitOptions)
返回的字符串数组包含此字符串中的子字符串(由指定字符串数组的元素分隔)。参数指定是否返回空数组元素。
RemoveEmptyEntries表示要省略返回的数组中的空数组元素
根据字符串或字符串组来截取字符串
1 string str = "GTAZB_JiangjBen_123"; 2 3 string[] sArray = str.Split( new string[] { "Ji", "jB" }, StringSplitOptions.RemoveEmptyEntries ); 4 5 foreach ( string e in sArray ) 6 7 { 8 Console.WriteLine( e ); 9 } 10 11 得到sArray[0] = "GTAZB_", sArray[1] = "ang", sArray[2] = "en_123";
Substring的使用:
1. Substring(Int32, Int32)
从此实例检索子字符串。子字符串从指定的字符位置开始且具有指定的长度。
提取字符串中的第i个字符开始的长度为j的字符串;
string str = "GTAZB_JiangjBen_123"; int start = 3, length = 8; Console.WriteLine( str.Substring( start - 1, length ) ); 输出得到AZB_Jian 。
2. Substring(Int32)
从此实例检索子字符串。子字符串从指定的字符位置开始。
提取字符串中右数长度为i的字符串
string str = "GTAZB_JiangjBen_123"; string tSt; int i = 5; tSt = str.Substring( str.Length - i ); Console.WriteLine( tSt ); 输出n_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
http://blog.csdn.net/wangshubo1989/article/details/46905881
1 、 取字 符 串 的前i 个 字 符 (1) string str1 = str.Substring( 0, i ); (2) string str1 = str.Remove( i, str.Length - i ); 2 、 去掉字 符 串 的前i 个 字 符 string str1 = str.Remove( 0, i ); string str1 = str.SubString( i ); 3 、 从右边 开 始取i 个 字 符 : string str1 = str.SubString( str.Length - i ); string str1 = str.Remove( 0, str.Length - i ); 4 、 从右边 开 始去掉i 个 字 符 : string str1 = str.Substring( 0, str.Length - i ); string str1 = str.Remove( str.Length - i, i ); 5 、 6 、 如果字 符 串 中 "abc" 则 替换 成 "ABC" str = str.Replace( "abc", "ABC" ); 7 、 c # 截取字 符 串 最 后 一 个 字 符 的问题 ! str1.Substring( str1.LastIndexOf( "," ) + 1 ); 8 、 C # 截取字 符 串 最 后 一 个 字 符 k = k.Substring( k.Length - 1, 1 );
http://www.cnblogs.com/lykbk/archive/2012/06/28/lyk1232132.html
以上是关于截取字符串的主要内容,如果未能解决你的问题,请参考以下文章