ach so war das gemeint. Folgendes sollte das Problem lösen:
Code: Alles auswählen
$orig_word[] = '#\b([^/.]*?)' . $row['word'] . '(.*?)\b#i';
\b besagt, dass es sich beim Wortanfang die Prüfung beginnt. ([^/.])*? dann dürfen (müssen aber nicht) beliebig viele Zeichen folgen, aber kein Slash und kein Punkt. Dann kommt der "Zensurbegriff". Dann können bis zum Wortende \b beliebige Zeichen .*? (es wird nicht mehr auf Punkt und Slash überprüft) beliebig oft folgen (müssen aber nicht).
Dann musst du aber auch den Replacement-Ausdruck ändern:
Code: Alles auswählen
$replacement_word[] = '\\1<acronym title="' . $row['replacement'] . '" style="border-bottom:1px dotted #cc0000;padding:0px">' . str_replace('\*', '\w*?', phpbb_preg_quote($row['word'], '#')) . '</acronym>\\2';
MagMo