s.oliver: Problem mit RegExp

Beitrag lesen

Servus,

htmlcode = htmlcode.replace(/<b>(.*)</b>/gim, "[B]$1[/B]");

[...]

gibt es irgendein flag das dem regexp befiehlt immer nur die
kleinstmögliche Zeichenkette zu nehmen?

das Verhalten von Quantifizierern wie '*' lässt sich durch ein
angehängtes Fragezeichen umkehren - von der Voreinstellung 'gierig'
auf 'nicht gierig' - ich würde davon aber in den meisten Fällen
abraten, da es nicht besonders performant ist. Um Tags per Parser
zu erfassen benutze ich meist Abwandlungen von dieser Form:

<b[^>]+>([^<]+)</b>

In dem Fall wird das kleinstmögliche Tag-Paar gefunden.

Grüsse