C#经常用到的字符串的截取

  在开发中我们经常需要截取字符串,很多初学者,不知道怎么做很好的截取字符串,下面是截取字符串过程中我们必须知道的以下函数:substring 函数、Remove 函数、Spilt函数,indexOf函数.

     Spilt函数
    String str="abc#def#hijkl#mn";
     string[] s = str.Split(new char[] { '#' });
    结果就是
    s[0]="abc";
    s[1]="def";
       s[2]="hijkl";
       s[3]="mn";

  substring 函数

  返回第一个参数中从第二个参数指定的位置开始、第三个参数指定的长度的子字符串。

  如果未指定第三个参数,将返回从第二个参数指定的位置开始直到字符串结尾的子字符串。

  Remove 函数

  Remove (int ch ,int fromIndex)去掉从ch开始到了fromIndex的字符串。

  indexOf 函数

  int indexOf(int ch) 返回指定字符在此字符串中第一次出现处的索引。

  int indexOf(int ch, int fromIndex) 从指定的索引开始搜索,返回在此字符串中第一次出现指定字符处的索引。

  int indexOf(String str) 返回第一次出现的指定子字符串在此字符串中的索引。

  int indexOf(String str, int fromIndex) 从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引。



  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 如果字符串中有"a"则替换成"A"

  str=str.Replace("a","A");




  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);

posted on 2014-10-24 16:18  屠龙尊者  阅读(290)  评论(0编辑  收藏  举报