正規表現のプリコンパイル機能の正しい使用


正規表現を使用する場合、そのプリコンパイル機能を利用して、正規マッチング速度を効率的に向上させることができます.
同時に、Patternは、複数のプリコンパイルの実行を避けるために、static final静的変数として定義します.
 
以下では、二つの種類の正則を使う場面を挙げて、プリコンパイルがどのように使うべきかを具体的に説明します.
【間違い用法】
//        
private void func(...) {
    if (Pattern.matches(regexRule, content)) {
        ...
    }
}
//      
private void func(...) {
    Pattern pattern = Pattern.compile(regexRule);
    Matcher m = pattern.matcher(content);
    if (m.matches()) {
        ...
    }
}
【正しい使い方】
private static final Pattern pattern = Pattern.compile(regexRule);
 
private void func(...) {
    Matcher m = pattern.matcher(content);
    if (m.matches()) {
        ...
    }
}
皆さんは分かりましたか?正則のプリコンパイルは主に2点に注意します.
1.  Pattern表式は事前に定義し、不要なところを仮定義します.
2. Pattern表現は、複数のプリコンパイルを行わないようにstatic final静的変数として定義します.
 
 原文のリンク:https://blog.csdn.net/qq_35312171/articale/detail/82663344
 
もっと素晴らしいです.私の「今日のトップ号」に注目してください.Java雲ノートはいつでもどこでも最新の、最も便利な携帯クラウドサービスを提供します.