dan: Javascript -> replace

Hallo alle,

ich versuche mit folgendem Script bestimmte Teile eines String durch andere zu ersetzen.
Leider klappt das nur zur Hälfte. Es wird zB der Tag <bigfont> nur einmal ersetzt. Kommt
er ein weiteres mal vor, dann wird er ignoriert.

Kann mir bitte jemand erklären warum das so ist oder wie ich besser mache?

Vielen Dank für Eure Hilfe, Daniel

var dtext="<bigfont>GROSS<fontend><smallfont>KLEIN <fontend><bigfont>GROSS<fontend>";

if ( hasRightVersion )
{
dtext = dtext.replace( /<bigfont>/, "<fontsize='34'>");
dtext = dtext.replace( /<smallfont>/, "<font size='17'>" );
dtext = dtext.replace( /<fontend>/, "</font>" );
}
else
{
dtext = dtext.replace( /<bigfont>/, "<span class='topcont_bigfont'>" );
dtext = dtext.replace( /<smallfont>/, "<span class='topcont_smallfont'>" );
dtext = dtext.replace( /<fontend>/, "</span>" );
}

  1. Hi,

    die replace-Methode arbeitet mit einer Regular-Expression.
    Du musst hinter das zweite "/" noch ein g setzen, um alle Vorkommen zu ersetzen, zusätzlich ggf. noch ein i um die Groß-/Kleinschreibung zu ignorieren.

    MfG
    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
    1. Kaum macht man es richtig,
      schon gehts.

      Vielen Dank für die Hilfe. Nun gehts.

      Gruß Daniel