ホームページ  >  記事  >  バックエンド開発  >  PHP で文字列内の単語の出現を数えて並べ替えるにはどうすればよいですか?

PHP で文字列内の単語の出現を数えて並べ替えるにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-21 10:26:02230ブラウズ

How to Count and Sort Word Occurrences in a String in PHP?

文字列内の出現する単語の並べ替えとカウント

問題ステートメント:

が表示されますさまざまな単語を含む文字列。ここでのタスクは、文字列内の各単語の頻度を判断し、それを体系的に表示することです。

PHP の単語カウント機能を使用した解決策:

PHP は次のことを提供します。 str_word_count() 関数。文字列を個々の単語の配列に分割します。この関数を array_count_values() 関数と組み合わせて使用​​すると、各単語の出現を効果的にカウントできます。

<code class="php">$str = 'happy beautiful happy lines pear gin happy lines rock happy lines pear ';
$words = array_count_values(str_word_count($str, 1));</code>

1 パラメーターを指定した str_word_count() 関数により、単語の配列が確実に返されます。続いて、array_count_values() はこの配列を取得して連想配列に変換します。ここで、各一意の単語がキーとして機能し、その値が出現数を表します。

この連想配列は、arsort( ) 出現頻度の降順で単語をリストする関数:

<code class="php">arsort($words);</code>

ループで並べ替えられた結果を表示するには、並べ替えられた配列を反復処理し、各単語の数を出力します:

<code class="php">foreach ($words as $word => $count) {
    echo "There are $count instances of $word.\n";
}</code>

これにより、指定したものと同様の出力が生成されます:

There are 4 instances of happy.
There are 3 instances of lines.
There are 2 instances of pear.
There are 1 instances of gin.
There are 1 instances of rock.
There are 1 instances of beautiful.

以上がPHP で文字列内の単語の出現を数えて並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。