文字列内の部分文字列の出現数をカウントする
文字列内の部分文字列の出現を確認しようとすると、検索時に一般的な問題が発生します。アルゴリズムの終了に失敗します。これを修正するには、次の点に対処することが不可欠です。
問題を理解する
上記の例を考えてみましょう。ここでの目標は、「hello」の出現をカウントすることです。文字列「helloslkhellodjladfjhello」。このアルゴリズムは、indexOf メソッドを使用して部分文字列を繰り返し検索します。ただし、部分文字列の長さによって lastIndex が段階的に調整されるため、無限ループが発生します。
信頼できる解決策
これを克服するには、countMatches を使用できます。 Apache Commons Lang のメソッド。この定義済み関数は、以下のコードに示すように、部分文字列の出現を正確にカウントします。
String str = "helloslkhellodjladfjhello"; String findStr = "hello"; System.out.println(StringUtils.countMatches(str, findStr));
これにより、期待されるカウントは 3 になります。
以上が文字列内の部分文字列の出現を確実にカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。