Java 一个字符串在另外一个字符串出现次数
2016-10-11 17:15
239 查看
统计一个字符串在另外一个字符串出现次数
代码如下:
代码如下:
package me.chunsheng.javatest; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * Created by wei_spring on 16/10/11. * <p> * 统计一个字符串在另外一个字符串出现的次数 * 正则匹配的方法,前提字符串不是特殊字符串 * eg:finder("adadadadauuada", "ada") 这样会统计不准确的. * 另外一个遍历的解决了上面那种情况. * 两者时间如下(纳秒为单位): 正则明显耗时,正则本就不是统计用的!!! * finder:3 * finderTime:1579549 * getCount:4 * getCountTime:34506 */ public class SubStringCount { public static void main(String[] args) { long current1 = System.nanoTime(); System.out.println("finder:" + finder("adadadadauuada", "ada")); System.out.println("finderTime:" + (System.nanoTime() - current1)); long current2 = System.nanoTime(); System.out.println("getCount:" + getCount("adadadadauuada", "ada")); System.out.println("getCountTime:" + (System.nanoTime() - current2)); } public static int getCount(String source, String sub) { int count = 0; int length = source.length() - sub.length(); for (int i = 0; i < length; i++) { String sourceBak = source.substring(i, i + sub.length()); int index = sourceBak.indexOf(sub); if (index != -1) { count++; } } return count; } public static int finder(String source, String regexStr) { String regex = "[a-zA-Z]+"; if (regexStr != null && !regexStr.equals("")) { regex = regexStr; } Pattern expression = Pattern.compile(regex); Matcher matcher = expression.matcher(source); int n = 0; while (matcher.find()) { n++; } return n; } }
相关文章推荐
- Java统计一个字符串在另外一个字符串出现次数的方法
- 用JAVA写查询一个字符串中是否包含另外一个字符串以及出现的次数
- java中用正则表达式获取一个指定的子字符在字符串中出现的指定次数的下标索引,并且进行字符串分割
- 统计一个字符串在另一个字符串中出现的次数(Java mysql)
- java基础—统计一个字符串中各个字符出现的次数
- java一个字符串在另一个字符串中出现的次数
- 华为上机试题(java)找出一个字符串中出现次数最多的字符
- java查找一个字符串出现最多字母的次数
- 查找一个字符串中每个单词的出现次数--Java
- 计算一个字符串在另外一个字符串中出现的次数
- 用java编写一个函数,统计一个字符串中每个字母出现的次数
- 一个字符串中出现次数最多的单词 java语言实现
- java一个算法题:输出一个字符串中出现次数最多的字符,以及次数
- [Java练习]输入一个字符串,输出其中某个小写字母出现的次数
- JAVA获取一个字符串在整个字符串中出现的次数
- java集合TreeMap应用---求一个字符串中,每一个字母出现的次数
- Java中实现统计一个字符串在另一个字符串中出现的次数统计
- 一个字符串中连续出现次数最多的子串Java(2)
- 如何取得一个字符串在另外一个字符串中出现的次数
- java String类-获取一个字符串在另一个字符串中出现的次数