Seite 2 von 2
Re: best. Woerter formatieren
Verfasst: 30.11.2008 16:31
von TLoD
Xwitz hat geschrieben:Das färbt INC und ATT ein aber nicht alle Wörter mit INC oder ATT, was Du anfänglich wolltest. Was willst Du nun?
Die Aussage verstehe ich nun nicht so recht.
Ich habe es getestet, wen in einem Text, die Wörter aus dem ersten Array vorhanden sind, werden diese auch in den definierten Farben eingefärbt.
Das einziegste was mich noch stört, ist das ich nicht weiß, wie ich genau definieren kann, das er ein bestimmtes Wort einfärbt.
Ich wolle z.B. das Wort
deaktiviert und
aktiviert einfärben, bekomme aber
deaktiviert ausgegeben.
Weiß da einer Rat ?
Verfasst: 30.11.2008 18:12
von Miriam
Na dann mach halt vorher und nachher ein Leerzeichen mit rein; also aus
dann
Verfasst: 30.11.2008 18:14
von gn#36
Das lässt sich nur lösen, wenn du mit regulären Ausdrücken suchst. Unabhängig davon, wie du die einfärbung mit str_replace machst wirst du immer dieses Ergebnis bekommen. Bei regulären Ausdrücken kannst du sicherstellen, dass z.B. das Zeichen direkt vor dem zu suchenden Wort bzw. das Zeichen direkt danach kein Buchstabe ist.
Beispiel:
Code: Alles auswählen
$text = preg_replace('#([^a-z])(suchwort)([^a-z])#is', '\\1ersatz-html mit suchwort\\3', $text);
Das ist jetzt recht grob und erkennt z.b. auch äöüß vorher oder nachher nicht als buchstaben (das kannst du ja selbst einfügen

ist nicht so schwer), sollte aber dein Problem lösen.