A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 胡元江 中级黑马   /  2013-3-4 14:33  /  2115 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

C#中间有不有哪个函数可以简单的统计出字符串中间的某个字符的总个数,不需要我们外部自己写循环的。

6 个回复

正序浏览
调用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();
回复 使用道具 举报
汪振 发表于 2013-3-4 17:02
好方法!用单个的字眼(字符,或单个汉字)貌似都能分隔,如果是一个单词呢,比如“中国” ...

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

同样使用这个方法,有重载的哦。详见MSDN
回复 使用道具 举报
刘云东 发表于 2013-3-4 14:40
String .Split 方法
返回的字符串数组包含此实例中的子字符串(由指定字符串或 Unicode 字符数组的元素分隔 ...

好方法!用单个的字眼(字符,或单个汉字)貌似都能分隔,如果是一个单词呢,比如“中国”
回复 使用道具 举报
额。不错   我已经找到我那题的另一种办法了。
回复 使用道具 举报
楼上的 确实是好方法
回复 使用道具 举报
String .Split 方法
返回的字符串数组包含此实例中的子字符串(由指定字符串或 Unicode 字符数组的元素分隔)。

意思就是,比如字符串“abcdabcsadfgaf”你要查找有多少a,用a分割,返回的一个char类型的数组,数组的长度减去1,就是出现的次数,应该是这样。其它情况,暂时不确定。

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马