亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java如何統計一個字符串在另外一個字符串出現次數

發布時間:2021-08-07 11:55:25 來源:億速云 閱讀:237 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關Java如何統計一個字符串在另外一個字符串出現次數,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

具體如下:

Java統計一個字符串在另外一個字符串出現次數

代碼如下:

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) {
    System.out.println("億速云測試結果:");
    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如何統計一個字符串在另外一個字符串出現次數”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

元氏县| 新宾| 娄烦县| 三门峡市| 怀柔区| 长治市| 大宁县| 桦南县| 郴州市| 措勤县| 隆昌县| 宁远县| 余干县| 固阳县| 墨玉县| 兴宁市| 邢台县| 马龙县| 临邑县| 金寨县| 昭通市| 乌兰察布市| 岑溪市| 台湾省| 浙江省| 神农架林区| 南汇区| 西华县| 聂荣县| 静乐县| 景德镇市| 武隆县| 东丽区| 鄱阳县| 通许县| 内黄县| 衢州市| 建德市| 西青区| 娱乐| 洛阳市|