C# 字符串的截取函数总结

作者:袖梨 2022-06-25

下面是截取字符串过程中我们必须知道的以下函数:substring 函数、Remove 函数、indexOf函数.

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

附一中文字符串截取函数

 代码如下 复制代码

///str_value 字符
///str_len 要截取的字符长度
  public string leftx(string str_value,int str_len)
  {
   int p_num = 0;  
   int i;
   string New_Str_value = "";

   if (str_value=="")
   {
    New_Str_value = "";
   }
   else
   {
   int Len_Num = str_value.Length;

  

   //if (Len_Num < str_len)
   //{
   // str_len = Len_Num;
   //}


   for (i = 0;i<=Len_Num - 1; i++)
    {
     //str_value.Substring(i,1);
     if (i >Len_Num) break;
     char c  = Convert.ToChar(str_value.Substring(i,1));
     if  (((int)c > 255) || ((int)c<0))
     {
      p_num = p_num + 2;

     }
     else
     {
      p_num = p_num + 1;

     }

     if (p_num >= str_len)
     {
     
      New_Str_value = str_value.Substring(0,i+1);
     
      break;
     }
     else
     {
      New_Str_value = str_value;     
     }
  
    }
  
      }
   return New_Str_value;
  }

相关文章

精彩推荐