用java 正则表达式 计算一个字符串中某个子串的个数
2012-10-14 23:25
288 查看
import java.util.regex.Pattern; import java.util.regex.Matcher; public class RegexTest { public static void main(String args[]){ String str = "abcdfdfsabcdfdsf abc fdfdabcabc"; //1. 用这则表达式处理, 不过好像一点都不省事.. Pattern p = Pattern.compile("abc",Pattern.CASE_INSENSITIVE); Matcher m = p.matcher(str); int count = 0; while(m.find()){ count ++; } System.out.println("ABC的个数 : " + count); //2. 用普通方法来做,比较省事 String [] ary = ("," + str + ",").split("abc"); System.out.println("ABC的个数 : " + (ary.length - 1)); } } 我觉得用split方法,以"abc"做分隔符将字串拆分成数组,这样比较简单.不过上面的代码(第二种方法)只能判断小写"abc"的个数, 如果你还需要将"ABC"或者"aBc"或者"abC"这样的字串都找出来, 只需要将第二种方法的代码修改成下面这样的就可以了: String [] ary = ("," + str.toLowerCase() + ",").split("abc"); System.out.println("ABC的个数 : " + (ary.length - 1));
相关文章推荐
- 将一个字符串中的多个连在一起的空格变成单个空格 Java 正则表达式
- java 使用正则表达式统计一个字符串中子字符串出现次数
- JAVA 正则表达式:使用group方法计算匹配到的字符串个数
- java中用正则表达式获取一个指定的子字符在字符串中出现的指定次数的下标索引,并且进行字符串分割
- Java正则表达式匹配一个时间格式的字符串
- java中正则表达式用Pattern计算字符串的结果(四则运算);分成有括号和没括号;当然也可以采用逆波兰式
- 在Java中用正则表达式判断一个字符串是否是数字的方法
- 计算字符串长度(关于日文字符) 正则表达式
- 工作问题-java-一个好用的正则表达式
- 输入一个字符串表达式,输出计算结果(队列、栈的应用)
- 正则表达式(一个字符串翻转的例子)(http://www.cnblogs.com/hai98)
- 正则表达式对邮件地址进行校验以及从一个字符串中匹配出一个格式正确的邮件地址
- 利用正则表达式计算含有中文的字符串长度
- [编写高质量代码:改善java程序的151个建议]建议57 推荐在复杂字符串操作中使用正则表达式
- Java正则表达式实现${name}形式的字符串模板
- java 通过正则表达式获取匹配字符串的例子
- java用正则表达式判断字符串中是否仅包含英文字母、数字和汉字
- java正则表达式获得html字符串中<img src>的src中的url地址
- java 将字符串转成算术表达式进行计算
- 取得一个字符串表达式的计算结果(实现方法二)