前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >c#中分割字符串的方法

c#中分割字符串的方法

作者头像
阳光岛主
发布2019-02-19 12:34:48
1.1K0
发布2019-02-19 12:34:48
举报
文章被收录于专栏:米扑专栏米扑专栏米扑专栏

c#中分割字符串的方法

第一种方法:打开vs.net新建一个控制台项目。然后在Main()方法下输入下面的程序。      string s="abcdeabcdeabcde";       string[] sArray=s.Split(''c'');       foreach(string i in sArray)       Console.WriteLine(i.ToString());        输出下面的结果:ab                       deab                       deab                       de 我们看到了结果是以一个指定的字符进行的分割。如果我们希望使用多个字符进行分割如c,d,e如何做呢?好,我们使用另一种构造方法:        更改为     string s="abcdeabcdeabcde     string[] sArray1=s.Split(new char[3]{''c'',''d'',''e''});        foreach(string i in sArray1)        Console.WriteLine(i.ToString());    可以输出下面的结果:ab                       ab                       ab除了以上的这两种方法以外, 第三种方法是使用正则表达式。新建一个控制台项目。然后先添加 using System.Text.RegularExpressions;'http://www.knowsky.comMain() :中更改为       System.Text.RegularExpressions      string content="agcsmallmacsmallgggsmallytx";       string[]resultString=Regex.Split(content,"small",RegexOptions.IgnoreCase)        foreach(string i in resultString)        Console.WriteLine(i.ToString());        输出下面的结果:agc                       mac                       ggg                       ytx

C#中使用string.Split方法来分割字符串的注意事项:

C#中使用string.Split方法来分割字符串的注意事项:string.Split给我们提供了非常灵活的使用方式, 但是如果使用不当, 会造成错误, 最近在做code review时, 看到大部分人这么使用:            string s = "A|B|:|C:D";            string[] ss = s.Split("|:|".ToCharArray());            //ss[0]: A            //ss[1]: B            //ss[2]:            //ss[3]:            //ss[4]: C            //ss[5]: D其实他的本意是使用”|:|”将字符串分开的, 目标是为了得到数组: “A|B” 和 “C:D”, 但是没有直接找到Split(string)的重载, 所有就是用了ToCharArray(), 很显然, 得到的结果是错误的.正确的用法为:            string[] ss1 = s.Split(new[] {"|:|"}, StringSplitOptions.None);            //ss1[0]: A|B            //ss1[1]: C:D后一个参数, 是标志是否自动remove empty的数据. 例如: "A|B|:|C:D|:|" 做分割时, 会返回三个数组, 该数组的最后一个元素是空"", 如果我们想过滤掉这些空的元素, 可以使用参数: StringSplitOptions.RemoveEmptyEntries 即: string[] ss1 = s.Split(new[] {"|:|"}, StringSplitOptions.RemoveEmptyEntries); 例子:            s = "A|B|:|C:D|:|";            string[] ss1 = s.Split(new[] {"|:|"}, StringSplitOptions.RemoveEmptyEntries);            //ss1[0]: "A|B"            //ss1[1]: "C:D"            ss1 = s.Split(new[] { "|:|" }, StringSplitOptions.None);            //ss1[0]: "A|B"            //ss1[1]: "C:D"            //ss1[2]: ""

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2009年12月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档