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

本文实例总结了C#常用的字符串截取函数用法。分享给大家供大家参考。具体分析如下:

在C#中字符串截取函数包括有substring 函数,Remove 函数,indexOf 函数,它们三个都可以对字符串进行截取操作,下面我们来分别介绍一下。

下面是截取字符串过程中我们必须知道的以下函数: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;
}

希望本文所述对大家的C#程序设计有所帮助。

(0)

相关推荐

  • C# Base64编码函数

    一. Base64的编码规则        Base64编码的思想是是采用64个基本的ASCII码字符对数据进行重新编码.它将需要编码的数据拆分成字节数组.以3个字节为一组.按顺序排列24 位数据,再把这24位数据分成4组,即每组6位.再在每组的的最高位前补两个0凑足一个字节.这样就把一个3字节为一组的数据重新编码成了4个字节.当所要编码的数据的字节数不是3的整倍数,也就是说在分组时最后一组不够3个字节.这时在最后一组填充1到2个0字节.并在最后编码完成后在结尾添加1到2个 "=".

  • C#常见应用函数实例小结

    本文实例总结了C#常见应用函数.分享给大家供大家参考,具体如下: 1.页面写CS代码(代码内嵌) <%@ Import Namespace="System" %> <%@ Import Namespace="System.Collections.Generic" %> <Script runat="server"> public int userId = 0; protected void Page_Load(

  • C#版的 Escape() 和 Unescape() 函数分享

    Escape: 复制代码 代码如下: public static string Escape(string str) { StringBuilder sb = new StringBuilder(); foreach (char c in str) { sb.Append((Char.IsLetterOrDigit(c) || c == '-' || c == '_' || c == '\\' || c == '/' || c == '.') ? c.ToString() : Uri.HexEs

  • C# 递归函数详细介绍及使用方法

    什么是递归函数/方法? 任何一个方法既可以调用其他方法也可以调用自己,而当这个方法调用自己时,我们就叫它递归函数或递归方法. 通常递归有两个特点: 1. 递归方法一直会调用自己直到某些条件被满足 2. 递归方法会有一些参数,而它会把一些新的参数值传递给自己. 那什么是递归函数?函数和方法没有本质区别,但函数仅在类的内部使用.以前C#中只有方法,从.NET 3.5开始才有了匿名函数. 所以,我们最好叫递归方法,而非递归函数,本文中将统一称之为递归. 在应用程序中为什么要使用递归?何时使用递归?如何

  • c#中DateTime.Now函数的使用详解

    复制代码 代码如下: //2008年4月24日     System.DateTime.Now.ToString("D");     //2008-4-24     System.DateTime.Now.ToString("d");     //2008年4月24日 16:30:15     System.DateTime.Now.ToString("F");     //2008年4月24日 16:30     System.DateTime

  • C#生成MD5的函数代码

    复制代码 代码如下: public static string GetMD5(string sDataIn)        {            MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();            byte[] bytValue, bytHash;            bytValue = System.Text.Encoding.UTF8.GetBytes(sDataIn);         

  • C#实现为类和函数代码自动添加版权注释信息的方法

    本文实例讲述了C#实现为类和函数代码自动添加版权注释信息的方法,分享给大家供大家参考之用.具体方法如下: 以web项目为例: 一:给类加注释 1.在visual studio 的安装路径下 如:[盘符]:/Program files/Microsoft Visual Studio 8/Common7/IDE/ItemTemplates/web/cshare/2052/class.zip ,将里面的class.cs改为: /*------------------------------------

  • C#实现向函数传递不定参数的方法

    本文实例讲述了C#实现向函数传递不定参数的方法.分享给大家供大家参考.具体实现方法如下: using System; class Min{ public int MinVla(params int [] nums){ int m; if (nums.Length == 0){ Console.WriteLine("Error: no arguments."); return 0; } m = nums[0]; foreach ( int val in nums){ if ( val &

  • C#自定义函数NetxtString生成随机字符串

    本文实例展示了C#自定义函数NetxtString实现生成随机字符串的方法,在进行C#项目开发中非常实用!分享给大家供大家参考. 一.生成随机字符串 关键代码如下: /// <summary> /// 生成随机字符串 /// </summary> /// <param name="random">Random</param> /// <param name="size">字符串长度</param>

  • C# 静态构造函数使用总结

    •静态构造函数既没有访问修饰符,也没有参数. •如果没有编写静态构造函数,而这时类中包含带有初始值设定的静态字段,那么编译器会自动生成默认的静态构造函数. •在创建第一个类实例或任何静态成员被引用时,.NET将自动调用静态构造函数来初始化类,也就是说我们无法直接调用静态构造函数,也就无法控制什么时候执行静态构造函数了. •如果类中包含用来开始执行的 Main 方法,则该类的静态构造函数将在调用 Main 方法之前执行. •如果类中的静态字段带有初始化,则静态字段的初始化语句将在静态构造函数之前运

  • C# 使用匿名函数解决EventHandler参数传递的难题

    首先,动态生成PictureBox,很简单, PictureBox box = new PictureBox() ; box.ImageLocation = imageRoad ; 其次,给PictureBox添加右键菜单,也不难, ContextMenu menu = new ContextMenu(); box.ContextMenu = menu ; 然后,要给右键菜单增加"删除"项,并实现删除图片事件.这个,比较麻烦. MenuItem item = new MenuItem(

  • C# 常用日期时间函数(老用不熟)

    --DateTime 数字型 System.DateTime currentTime=new System.DateTime(); 1.1 取当前年月日时分秒 currentTime=System.DateTime.Now; 1.2 取当前年 int 年=currentTime.Year; 1.3 取当前月 int 月=currentTime.Month; 1.4 取当前日 int 日=currentTime.Day; 1.5 取当前时 int 时=currentTime.Hour; 1.6 取

随机推荐