Hi!
Ich nehme an, da? das $ nur ein Tippfehler war.
Wenn du alle Sonderzeichen (mit Ausnahme des "?" natürlich) berücksichtigen willst. Dann probier mal folgendes:
eregi_replace("\?([^? ]+)\?","<b>\1</b>",$string);
Das Führt zu treffern wo eine Zeichenkette zwischen zwei "?" steht, die aus MINDESTENS einem Zeichen besteht (+) und die KEIN "?" und KEIN " " enthält. (hinter dem Fragezeichen in der Liste ist ein Space, da sonst jedes "?" als FETT-Schrift-Anzeige gesehen wird - also auch Fragezeichen am Ende einer Frage).
Es werden nun also auch alle Sonderzeichen berücksichtigt.
Du kanns damit also nur einzelne Wörter FETT schreiben. Sinnvoller wäre ein Zeichen zur Kennzeichnung der FETT-Schrift zu verweden, das in normalen Text nur selten vorkommt (z.Bsp. # oder $)