ホームページ > Java > &#&チュートリアル > 文字列内の部分文字列の出現を確実にカウントするにはどうすればよいですか?

文字列内の部分文字列の出現を確実にカウントするにはどうすればよいですか?

DDD
リリース: 2024-12-14 06:27:10
オリジナル
955 人が閲覧しました

How Can I Reliably Count Substring Occurrences in a String?

文字列内の部分文字列の出現数をカウントする

文字列内の部分文字列の出現を確認しようとすると、検索時に一般的な問題が発生します。アルゴリズムの終了に失敗します。これを修正するには、次の点に対処することが不可欠です。

問題を理解する

上記の例を考えてみましょう。ここでの目標は、「hello」の出現をカウントすることです。文字列「helloslkhellodjladfjhello」。このアルゴリズムは、indexOf メソッドを使用して部分文字列を繰り返し検索します。ただし、部分文字列の長さによって lastIndex が段階的に調整されるため、無限ループが発生します。

信頼できる解決策

これを克服するには、countMatches を使用できます。 Apache Commons Lang のメソッド。この定義済み関数は、以下のコードに示すように、部分文字列の出現を正確にカウントします。

String str = "helloslkhellodjladfjhello";
String findStr = "hello";

System.out.println(StringUtils.countMatches(str, findStr));
ログイン後にコピー

これにより、期待されるカウントは 3 になります。

以上が文字列内の部分文字列の出現を確実にカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート