Einzelnen Beitrag anzeigen
Alt 24.08.2005, 14:03   #1
waquner
Jr. Member
 
Registriert seit: 01.01.2003
Alter: 40
Beiträge: 75


waquner eine Nachricht über ICQ schicken
Standard preg_replace Frage

Hoi,

In meinem Blog werden bestimmte "Insider"-Wörter verlinkt, der Link führt dann zu einem Glossar mit einer kurzen Erklärung.

Bisher habe ich dazu folgenden Code verwendet:
PHP-Code:
$text preg_replace('#(rtw|ktw|rr|eb)#i','<a href="(...)$\1(...)</a>',$text); 
(das (...) steht dabei natürlich für weiteren html-code)
Das störende ist dabei jedoch dass zB das Kürzel rr auch innerhalb eines Wortes verlinkt wird (Zb irritieren), also dachte ich das ganze noch zusätzlich auf ein whitespace links und rechts davon zu überprüfen

PHP-Code:
$text preg_replace('#(\\srtw\\s|\\sktw\\s|\\srr\\s|\\seb\\s)#i','<a href="(...)$1(...)</a>',$text); 
Das erbringt zwar den gewünschten effekt, dass zB das rr in irritiert nicht mehr verlinkt wird, jedoch wird jetz nicht nur das kürzel/WOrt selber verlinkt, sondern auch die whitespaces links und rechts, und das is auch nicht so ganz das was ich haben will.

Wie könnte man das ganze eleganter oder einfach gscheid funktionierend lösen? Bin nicht so der RegEx-Pro, bin froh das hingebracht zu haben

Danke!

MfG waquner
____________________________________
zivi:blog - das weblog für österreichische zivis
waquner ist offline   Mit Zitat antworten