Hi!
Du willst also eine Gruppe (<-Stichwort!) aus deinem Suchbegriff und Wortzeichen bilden, vorangehend und gefolgt von einem Nicht-Wort-Zeichen oder einer Wortgrenze.
Bin bei meiner Suche auf preg_split gestoßen, welches Regexps benutzt und ein array ausgeben soll:
$word = preg_grep("/^$q/iU", preg_split("/\W/", $word));
Nimm doch lieber preg_match_all() statt selbst zu splitten und dann passt auch meine Anleitung von oben.
Komme dem Ziel näher. Nun machen mir aber meine Umlaute Probleme (also die werden wohl als \W gewertet).
Welche locale-Einstellung hast du denn vorliegen, oder anders: stell doch mal Deutsch ein, wenn du deutsche Regeln haben willst.
Habe alles fein auf utf8 umgestellt (Dateiformat, .htaccess Anweisung, DB, Verbindung zwischen DB und Client,...). Heißt das, ich muss meine Codezeile jetzt auch irgendwie mit Multibyte Befehlen schreiben?
Nur wenn du Funktionen verwenden willst, die sonst nur für Ein-Byte-Kodierungen ausgelegt sind. Preg_* hat ja seine eigene UTF-8-Behandlung eingebaut.
Lo!