黑马程序员技术交流社区

标题: 发个水贴但是确定想知道。 [打印本页]

作者: 胡元江    时间: 2013-3-4 14:33
标题: 发个水贴但是确定想知道。
C#中间有不有哪个函数可以简单的统计出字符串中间的某个字符的总个数,不需要我们外部自己写循环的。
作者: 刘云东    时间: 2013-3-4 14:40
String .Split 方法
返回的字符串数组包含此实例中的子字符串(由指定字符串或 Unicode 字符数组的元素分隔)。

意思就是,比如字符串“abcdabcsadfgaf”你要查找有多少a,用a分割,返回的一个char类型的数组,数组的长度减去1,就是出现的次数,应该是这样。其它情况,暂时不确定。
作者: 林嘉健    时间: 2013-3-4 15:36
楼上的 确实是好方法
作者: 胡元江    时间: 2013-3-4 15:43
额。不错   我已经找到我那题的另一种办法了。
作者: 汪振    时间: 2013-3-4 17:02
刘云东 发表于 2013-3-4 14:40
String .Split 方法
返回的字符串数组包含此实例中的子字符串(由指定字符串或 Unicode 字符数组的元素分隔 ...

好方法!用单个的字眼(字符,或单个汉字)貌似都能分隔,如果是一个单词呢,比如“中国”
作者: 刘云东    时间: 2013-3-4 18:07
汪振 发表于 2013-3-4 17:02
好方法!用单个的字眼(字符,或单个汉字)貌似都能分隔,如果是一个单词呢,比如“中国” ...

Split( String [], StringSplitOptions)        返回的字符串数组包含此字符串中的子字符串(由指定字符串数组的元素分隔)。参数指定是否返回空数组元素。

同样使用这个方法,有重载的哦。详见MSDN
作者: 赵文博    时间: 2013-3-5 01:56
调用Split可能是不可行的,可以用正则表达式
string str = "爱1爱2爱";
            string findStr = "爱";

            Regex r = new Regex(findStr);           // 定义一个Regex对象实例,findstr为要查找的字符床
            MatchCollection  m = r.Matches(str);    // 在字符串str中匹配

            if (m != null)
            {
                Console.WriteLine(m.Count);               //输出出现次数
            }

            Console.ReadKey();





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