C#截图字符串常用的方法有 split 、Substring、Replace、remove等。

split的使用:

1. Split( Char ())

返回的字符串数组包含此实例中的子字符串(由指定 Unicode 字符数组的元素分隔)。

根据单个分隔字符用split截取。

例如 复制代码代码如下:

string st="GT123_1"; string[] sArray=st.Split(‘_’);// 一定是单引

即可得到sArray[0]="GT123",sArray[1]="1";

2.利用多个字符来分隔字符串

例如 复制代码代码如下:

     string str = "GTAZB_JiangjBen_123";
string[] sArray = str.Split(new char[] { 'j', '_' });
foreach(string e in sArray)
{ Console.WriteLine(e); }

得到sArray[0]="GTAZB",sArray[1]="Jiang",sArray[2]="Ben",sArray[3]="123";

3.Split( String (), StringSplitOptions)

返回的字符串数组包含此字符串中的子字符串(由指定字符串数组的元素分隔)。参数指定是否返回空数组元素。             RemoveEmptyEntries表示要省略返回的数组中的空数组元素

根据字符串或字符串组来截取字符串

例如 复制代码代码如下:

    string str = "GTAZB_JiangjBen_123";
string[] sArray = str.Split( new string[]{"Ji","jB"}, StringSplitOptions.RemoveEmptyEntries);
foreach(string e in sArray)
{ Console.WriteLine(e); }

得到sArray[0]="GTAZB_",sArray[1]="ang",sArray[2]="en_123";

其他:

public string[] Split(params char[] separator)
Split 方法提取此字符串中的子字符串,这些子字符串由 separator 参数中的一个或多个字符串分隔,然后该方法将这些子字符串作为数组的元素返回。 Split 方法使用区分大小写的序号排序规则执行比较,从而查找分隔符。
Split 方法忽略 separator 的任何值为 Nothing 或空字符串 ("") 的元素。 为了在 separator 中的字符串具有公共字符的情况下避免出现不明确的结果, Split 操作从实例值的开始进行到结尾,并匹配 separator 中与实例中的分隔符相等的第一个元素。 实例中子字符串的出现顺序优先于 separator 中元素的顺序。 例如,考虑值为“abcdef”的实例。如果 separator 中的第一个元素为“ef”,且第二个元素为“bcde”,则拆分操作的结果将是“a”和“f”。 这是因为先遇到实例中的子字符串“bcde”,且它匹配 separator 中的元素,然后才遇到子字符串“f”。 不过,如果 separator 的第一个元素为“bcd”,且第二个元素为“bc”,则拆分操作的结果将是“a”和“ef”。 这是因为“bcd”是 separator 中第一个与实例中的分隔符匹配的分隔符。 如果颠倒分隔符的顺序,使得第一个元素为“bc”且第二个元素为“bcd”,则结果将是“a”和“def”。
性能注意事项
Split 方法为返回的数组对象分配内存,同时还为每一个数组元素分配一个 String 对象。 如果您的应用程序要求达到最佳性能,或者如果在您的应用程序中内存分配管理很关键,请考虑使用 IndexOf 或 IndexOfAny 方法,也可以选择使用 Compare 方法,在字符串中定位子字符串。 如果在分隔符字符处分割字符串,请使用 IndexOf 或 IndexOfAny 方法在字符串中定位分隔符字符。 如果在分隔符字符串处分割字符串,请使用 IndexOf 或IndexOfAny 方法定位分隔符字符串的第一个字符。 然后使用 Compare 方法确定第一个字符后面的字符是否等于分隔符字符串的其余字符。 此外,如果在多个 Split 方法调用中使用相同的字符集拆分字符串,请考虑创建一个数组并在每个方法调用中都引用该数组。 这可以极大地减少每个方法调用的额外系统开销。

Substring的使用:

1. Substring(Int32, Int32)

从此实例检索子字符串。子字符串从指定的字符位置开始且具有指定的长度。

提取字符串中的第i个字符开始的长度为j的字符串;

例如 复制代码代码如下:

 string str = "GTAZB_JiangjBen_123";
int start=,length=;
Console.WriteLine(str.Substring(start-, length));
//输出得到 AZB_Jian。 string vstr="123456789|";
Console.WriteLine(str.Substring(, vstr.length-));
//输出得到 123456789。

2. Substring(Int32)

从此实例检索子字符串。子字符串从指定的字符位置开始。

提取字符串中右数长度为i的字符串

复制代码代码如下:

    string str = "GTAZB_JiangjBen_123";
string tSt; int i=;
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("","");
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=,length=;
str=str.remove(i, length);
console.writeline(str);

输出GTAZBen_123。

2. Remove(Int32)

删除此字符串中从指定位置到最后位置的所有字符。

    string s = "abc---def";
Console.WriteLine("{0}", s.Remove());

输出:abc

C#几种截取字符串的方法(split 、Substring、Replace、remove)的更多相关文章

  1. C#几种截取字符串的方法小结 (摘抄)

    1.根据单个分隔字符用split截取 例如 string st="GT123_1"; string[] sArray=st.split("_"); 即可得到sA ...

  2. C#几种截取字符串的方法小结

    1.根据单个分隔字符用split截取例如代码如下: string st="GT123_1"; string[] sArray=st.split("_"); 即可 ...

  3. C#几种截取字符串的方法小结,需要的朋友可以参考一下

    1.根据单个分隔字符用split截取 例如 复制代码 代码如下: string st="GT123_1"; string[] sArray=st.split("_&quo ...

  4. js常用的4种截取字符串方法

    平常经常把这几个api的参数记混了,于是打算记录下来,当不确定的时候在拿出来翻翻: 在做项目的时候,经常会需要截取字符串,所以常用的方法有slice().substr().substring().ma ...

  5. shell截取字符串的方法

    参考文献: linux中shell截取字符串方法总结 [Linux]如何在Shell脚本中计算字符串长度? 截取字符串的方法一共有八种,主要为以下方法 shell中截取字符串的方法有很多中, ${ex ...

  6. shell中截取字符串的方法总结

    shell中截取字符串的方法有很多种, ${expression}一共有9种使用方法. ${parameter:-word} ${parameter:=word} ${parameter:?word} ...

  7. JavaScript:在JS中截取字符串的方法

    这篇主要说一说截取字符串的方法,用于帮助自己缕清方法的作用,参数的意义,返回值,是否对于原来的字符串进行了操作等. 在javascript中,常见的截取字符串的方法有slice().substring ...

  8. paip.截取字符串byLastDot方法总结uapi python java php c# 总结

    paip.截取字符串byLastDot方法总结uapi python java php c# 总结 ========uapi   left_byLastDot   right_byLastDot 目前 ...

  9. java中subString、split、stringTokenizer三种截取字符串方法的性能比较(转)

    最近在阅读java.lang下的源码,读到String时,突然想起面试的时候曾经被人问过:都知道在大数据量情况下,使用String的split截取字符串效率很低,有想过用其他的方法替代吗?用什么替代? ...

随机推荐

  1. python程序转为exe文件

    python开发者向普通windows用户分享程序,要给程序加图形化的界面(传送门:这可能是最好玩的python GUI入门实例! http://www.jianshu.com/p/8abcf73ad ...

  2. python面向对象总结!

    面向对象 Object Oriented Programming 基本单元:对象把数据和功能封装在里边,能实现很好的复用性,灵活性和扩展性. 面向对象的两个基本概念:类和对象 面向对象的基本要素:属性 ...

  3. Linux写时拷贝技术【转】

    本文转载自:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/20/2601655.html COW技术初窥: 在Linux程序中,fork()会产 ...

  4. linux指定某用户某组挂载外接硬盘以便操作硬盘

    一.环境:发行版本:ubuntu 14.04 64bit 二.获取要指定的用户及组id 使用id命令 (笔者获取的uid和gid都为1000) 三.获取识别的硬盘路径 sudo fdisk -l  ( ...

  5. HDU 2544 最短路(Dijkstra)

    https://vjudge.net/problem/HDU-2544 题意: 输入包括多组数据.每组数据第一行是两个整数N.M(N<=100,M<=10000),N表示成都的大街上有几个 ...

  6. UVa 10003 切木棍(区间DP+最优矩阵链乘)

    https://vjudge.net/problem/UVA-10003 题意: 有一根长度为L的棍子,还有n个切割点的位置.你的任务是在这些切割点的位置处把棍子切成n+1部分,使得总切割费用最小.每 ...

  7. java编程内容之开始

    java应用程序开发应该掌握的各方面技术 1.初识java,熟悉Eclipse开发工具 2.java语言基础 3.流程控制,数组,字符串,类与对象 4.接口,继承与多态,类的高级特性 5.Java集合 ...

  8. mui --- 怎么获取百度地图定位功能

    <!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. Java东西太多,记录一些知识点

    实习两个月了,这两个月接触了不少东西,简单列举一下知识,未来需要多多学习和了解. 1.前端js.extjs4.Jquery(js框架这些基本现学现用): 2.基础不好要补补Servlet和JSP(再往 ...

  10. OpenGL遮挡查询

    转自:http://www.cnblogs.com/mazhenyu/p/5083026.html 在一个场景中,如果有有些物体被其他物体遮住了不可见.那么我们就不需要绘制它.在复杂的场景中,这可以减 ...