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

所属分类: 软件编程 / C#教程 阅读数: 89
收藏 0 赞 0 分享

本文实例总结了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#程序设计有所帮助。

更多精彩内容其他人还在看

c#开发word批量转pdf源码分享

已经安装有Office环境,借助一些简单的代码即可实现批量Word转PDF,看下面的实例源码吧
收藏 0 赞 0 分享

c# xml API操作的小例子

这篇文章主要介绍了c# xml API操作的小例子,有需要的朋友可以参考一下
收藏 0 赞 0 分享

c#唯一值渲染实例代码

这篇文章主要介绍了c#唯一值渲染实例代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

淘宝IP地址库采集器c#代码

这篇文章主要介绍了淘宝IP地址库采集器c#代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C#在后台运行操作(BackgroundWorker用法)示例分享

BackgroundWorker类允许在单独的专用线程上运行操作。如果需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用BackgroundWorker类方便地解决问题,下面看示例
收藏 0 赞 0 分享

c#文本加密程序代码示例

这是一个加密软件,但只限于文本加密,加了窗口控件的滑动效果,详细看下面的代码
收藏 0 赞 0 分享

c#生成站点地图(SiteMapPath)文件示例程序

这篇文章主要介绍了c#生成站点地图(SiteMapPath)文件的示例,大家参考使用
收藏 0 赞 0 分享

C# 键盘Enter键取代Tab键实现代码

这篇文章主要介绍了C# 键盘Enter键取代Tab键实现代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C# WinForm导出Excel方法介绍

在.NET应用中,导出Excel是很常见的需求,导出Excel报表大致有以下三种方式:Office PIA,文件流和NPOI开源库,本文只介绍前两种方式
收藏 0 赞 0 分享

C#串口通信程序实例详解

在.NET平台下创建C#串口通信程序,.NET 2.0提供了串口通信的功能,其命名空间是System.IO.Ports,创建C#串口通信程序的具体实现是如何的呢?让我们开始吧
收藏 0 赞 0 分享
查看更多