16.2 Wörter suchen

Problem

Sie möchten alle Wörter aus einem String herausfiltern.

Lösung

Der Schlüssel liegt in der sorgfältigen Definition dessen, was Sie unter einem Wort verstehen. Wenn Sie Ihre Definition haben, erzeugen Sie einen regulären Ausdruck mithilfe der speziellen Zeichentypen:

/\S+/         // alles, was kein Leerraum ist
/[A-Z'-]+/i   // alle Groß- und Kleinbuchstaben, Apostrophe und Bindestriche

Diskussion

Die einfache Frage: »Was ist ein Wort?« ist überraschend kompliziert. Zwar kennen Perl-kompatible reguläre Ausdrücke einen eingebauten Wort-Zeichentyp, der mit \w angegeben wird, aber Sie müssen genau verstehen, wie PHP ein Wort definiert. Ansonsten sind die Resultate anders, als Sie es erwarten.

Da \w direkt aus Perls Definition eines Wortes ...

Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.