So wählen Sie die ersten 10 Wörter in einem Satz?
Wie ich, von einem Ausgang, wählen Sie nur die ersten 10 Worte?
Vielleicht finden Sie
s($str)->words(10)
hilfreich, wie in diese standalone-Bibliothek.InformationsquelleAutor AAA | 2011-05-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hinzufügen von Unterstützung für andere Wort bricht wie Kommas und Gedankenstriche
preg_match
gibt einen schnellen Weg, und erfordert keine Aufteilung der string:Als Pebbl erwähnt, ist PHP nicht verarbeitet UTF-8 oder Unicode alle, die gut, also wenn das ist ein Anliegen, dann können Sie ersetzen
\w
für[^\s,\.;\?\!]
und\W
für[\s,\.;\?\!]
.Schönes update, +1 für die Vermeidung der Aufspaltung (und reguläre Ausdrücke verwenden!). Sie wollen watch out für diejenigen, die Wortgrenzen jedoch, wie pro meine aktualisierte Antwort.
Es ist bedauerlich, dass PHP immer noch nicht herausgefunden, wie man den Umgang mit Unicode - -- vielen Dank für die info, ich habe aktualisiert mein Antwort.
ich danke Ihnen sehr!!, dieser arbeitete auf meiner Website mit WPIMPORTALL nur die ersten 6 Buchstaben. Auch Unicode, war eine hervorragende Beurteilung!! wunderbar
arbeiten groß für Unicode
InformationsquelleAutor Kelly
Einfach die Aufteilung auf die Räume wird nicht richtig funktionieren, wenn es eine unerwarteten Charakter im Ort, ein Raum, in dem Satzbau, oder wenn der Satz mit mehreren verbundenen Räumen.
Folgende version funktionieren wird, egal, welche Art von "Raum" verwenden Sie zwischen Wörtern und kann leicht erweitert werden mit anderen Zeichen... es unterstützt derzeit alle Leerzeichen, plus-Zeichen , . ; ? !
Reguläre Ausdrücke sind perfekt für dieses Problem, denn Sie können ganz einfach den code, wie flexibel oder strikt, wie Sie möchten. Sie müssen vorsichtig sein, jedoch. Ich habe ausdrücklich näherte sich den oben genannten targeting-die Lücken zwischen den Worten — vielmehr als die Worte selbst — da ist es eher schwierig eindeutig was definieren ein Wort.
Nehmen die
\w
Wort-Grenze, oder dessen Kehrwert\W
. Ich habe selten verlassen sich auf diese, vor allem, weil — abhängig von der software, die Sie verwenden (wie bestimmte Versionen von PHP) — Sie nicht immer UTF-8 oder Unicode Zeichen.In regulären Ausdrücken ist es besser, genau zu sein, zu allen Zeiten. So, dass Ihre Ausdrücke verarbeiten kann, Dinge wie die folgenden, egal wo Sie gerendert werden:
Aufspaltung könnte sein, lohnt sich aber, in Bezug auf Leistung. So könnten Sie Kelly ' s aktualisiert Ansatzes, sondern wechseln
\w
für[^\s,\.;\?\!]+
und\W
für[\s,\.;\?\!]+
. Obwohl, ich persönlich mag die Einfachheit des splitting-Ausdruck oben, es ist leichter zu Lesen und daher zu ändern. Der Stapel von PHP-Funktionen, aber ist ein bisschen hässlich 🙂danke... und guter Punkt, ich hatte zu viel zu tun javascripting an diesem Tag 🙂
Ich Stimme mit @StephenSarcsamKamenar Frage! Ich nehme an, dass es zwei viel Antworten hier. Es ist die Pflicht der einen, die Frage zum update die richtige Antwort. Das ist das beste für mich: +1 ohne Zweifel!
genial Antwort...
Tolle Antwort. Ich möchte jedoch hinzufügen, um die Antwort, die Sie brauchen, um Benutzer
trim()
um Ihre$str
bevor Sie es verarbeiten. Auf diese Weise beseitigen Sie alle whitespace-Zeichen in den Ecken. Dies würde helfen, wenn Sie möchten überprüfen, ob Sie hinzufügen möchten, Ellipsen, um das Ende der Zeichenfolge, wenn die resultierende Zeichenfolge ist eine Untergruppe der ursprünglichen.InformationsquelleAutor Pebbl
http://snipplr.com/view/8480/a-php-function-to-return-the-first-n-words-from-a-string/
InformationsquelleAutor Spyros
Schlage ich
str_word_count
:Dem obigen Beispiel wird ausgegeben:
Die eine Schleife verwenden, um die Wörter, die Sie wollen.
Quelle: http://php.net/str_word_count
InformationsquelleAutor jawira
Wählen Sie 10 Wörter von dem text implementieren Sie folgende Funktion:
InformationsquelleAutor Milad
Dies kann leicht getan werden mit
str_word_count()
InformationsquelleAutor Rowlingso
Dieser könnte Ihnen dabei helfen. Funktion return N keine. Wörter
InformationsquelleAutor Ankur Rastogi
Versuchen, diese
Ich weiß, das ist nicht Zeit zu Antworten , aber lassen Sie die Neulinge wählen Sie Ihre eigenen Antworten.
InformationsquelleAutor saleem ahmed
Es ist völlig das, was wir suchen
Einfach Ausschneiden n einfügen in Ihr Programm und lief.
und rufen Sie die Funktion in Ihrem code-block, der nur als
InformationsquelleAutor Rizwan Gill
Ich es so machen:
Seine UTF8-kompatibel...
InformationsquelleAutor Vaci
Dieser könnte Ihnen dabei helfen. Funktion zurück 10
no. of words
.InformationsquelleAutor rowmoin
Verwenden Sie es wie diese:
Ausgabe:
Lorem ipsum dolor sit amet
Diese Funktion arbeitet auch sehr gut mit unicode-Zeichen wie Arabische Zeichen.
Ausgabe:
نموذج لنص عربي الغرض منه توضيح كيف يمكن استخلاص أول عدد معين من الكلمات الموجودة فى نص معين.
InformationsquelleAutor Amr
Verstehe ich nicht, warum alle von diesem Durcheinander, wenn es eine integrierte WordPress-Funktion:
Dass echos der ersten 15 Wörter der Inhalt (es arbeitet im inneren eine reguläre loop) und fügt Auslassungspunkte.
InformationsquelleAutor Fred K