Heim  >  Artikel  >  Backend-Entwicklung  >  Wie sortiere und zähle ich Wortinstanzen in einem PHP-String?

Wie sortiere und zähle ich Wortinstanzen in einem PHP-String?

Barbara Streisand
Barbara StreisandOriginal
2024-10-21 10:37:29560Durchsuche

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

Wortinstanzen in einem String in PHP sortieren und zählen

Das Sortieren und Zählen von Wortinstanzen in einem String ist eine häufige Aufgabe in der Programmierung. Glücklicherweise bietet PHP eine einfache und elegante Lösung für dieses Problem.

Verwendung von str_word_count() und array_count_values()

Die Funktion str_word_count() gibt ein Array aller Wörter zurück in einem String, während die Funktion array_count_values() die Anzahl der Vorkommen jedes Elements in einem Array zählt. Durch die Kombination dieser beiden Funktionen können wir die Vorkommen jedes Wortes in einer Zeichenfolge effizient zählen.

<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>

Das resultierende Array, $words, enthält die Anzahl jedes einzelnen Wortes in $str.

Einträge sortieren

Um die Wortanzahl zu sortieren, können wir die Funktion arsort() verwenden, die ein Array in absteigender Reihenfolge sortiert und dabei die Schlüssel beibehält.

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

Dadurch wird das $words-Array nach der Anzahl jedes Wortes sortiert, wobei das am häufigsten vorkommende Wort am Anfang des Arrays steht.

Ergebnisse drucken

Schließlich können wir das $words-Array durchlaufen und die Anzahl jedes Wortes ausdrucken:

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

Dieser Code gibt Folgendes aus:

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

Zusätzliche Hinweise

Das an str_word_count() übergebene 1-Argument gibt an, dass ein Array aller Wörter und keine Zeichenfolge zurückgegeben werden soll.

Das Sortieren der Einträge ist optional, kann aber nützlich sein um die Daten aussagekräftiger anzuzeigen.

Diese Lösung kann leicht angepasst werden, um andere Arten von Zeichenfolgen wie Sätze oder Absätze zu verarbeiten.

Das obige ist der detaillierte Inhalt vonWie sortiere und zähle ich Wortinstanzen in einem PHP-String?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn