黑马程序员技术交流社区

标题: 字符串处理,split [打印本页]

作者: xinchenglong    时间: 2013-8-26 22:31
标题: 字符串处理,split
string[] li =line.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
这是一个split函数的一个重载函数,这个函数不太会使用,也不太理解,求帮助!? 平常用的最多的就是split(’‘)方法了!

作者: 似鱼非鱼    时间: 2013-8-26 23:07
恩恩,求高人帮助,我也不懂,一堆括号,关键是那个new关键字,放那里是什么意思
作者: yueyp    时间: 2013-8-26 23:35
第一个参数就是传一个char类型的数组。
第二个是一个枚举类型的,表示数组li中不会含有空字符串的元素。
至于new 看不懂的话可以先自己定义一个char类型的数组然后把数组的名字传进去也是可以的。
作者: 左岸    时间: 2013-8-27 00:06
new char[] { ' ' }是说你要用来进行分割的符号,如果是两个符号以上的话就是要用一个数组来存放它咯。
StringSplitOptions.RemoveEmptyEntries意思是说返回的数组值不包括含有空字符串的数组元素,另外它还有一个是StringSplitOptions.none是指返回值包括含有空字符串的数组元素。
作者: zhangcheng5468    时间: 2013-8-27 07:02
这个一看意思就知道啦,几个重载就是在分隔字符串时处理相应的选项,你说的这个是移除多余空格!
作者: 天涯浪子    时间: 2013-8-28 15:47
string str1 = "1,2,3,4,5"; //声明一个字符串并赋值
            string [] str2=new string [20]; //声明长度为20的字符数组变良
            char[] sp = { ','};       //分割字符
            str2 = str1.Split(sp ); //分割字符串
            for (int i = 0; i < str2.Length; i++)
            {
                Console.WriteLine(str2 [i ]);  //输出分割结果
            }
            Console.ReadKey();
运行结果就是 1 2 3 4 5   这样你对比下理解吧


作者: 瞎猫馒头米田共    时间: 2013-8-29 22:01
第一个表示传一个char[]数组,数组中的都是你要分割字符串的标志,第二个参数是个枚举,如果选StringSplitOptions.RemoveEmptyEntries表示把你分割后得到的string[]数组中的空类型去掉。
作者: 帕格尼尼的眼泪    时间: 2013-8-30 09:51
你说的这种是以char分割
string[] Split(char[] separator, StringSplitOptions options) 将字符串按照指定的char分割符分割为字符串数组,options 取RemoveEmptyEntries的时候移除结果中的空白字符串
扩展一下,还有一种是以string分割
string[] Split(string[] separator, StringSplitOptions options) 将字符串按照指定的string分割符分割为字符串数组,同样options 取RemoveEmptyEntries的时候移除结果中的空白字符串




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2