Methode replace() bei mehreren Zeichen

Qantee

Grünschnabel
Moin moin,

derzeit lerne ich etwas JavaScript, verstehe aber leider nicht,
wie ich mehrere Zeichen ersetzen kann.

in php ganz einfach:
PHP:
$suche = array("ä", "ü");
$ersetze = array("ä", "ü")

str_replace($suche, $ersetze, $string);


Wie geht das aber in JavaScript?
Ich hab ein paar andere Foren durchwühlt, und das soll wohl mit /g (Global) gehen,
nur habe ich es nicht verstanden.

Bitte, sagts mir ;)

Ich habs probiert mit "pfuschen" aber dies:

Javascript:
linktitle.replace("ä", "ä").replace("Ã", "ß").replace("ß¼", "ü").replace("ß", "ö")

bringt nur das Ersetzen mit a, alles andere geht nicht.
 
Moin,

solch eine Funktionalität gibt es in JS leider nicht....man muss also pfuschen=> sie selber bauen.

Das könnte bspw. so aussehen:
Code:
String.prototype.str_replace=function(s,r)
{
  var t=this;
  var s=(typeof s=='string')?[s]:s;
  var r=(typeof r=='string')?[r]:r;
  for(var i=0;i<s.length;++i)
  {
    t=t.replace(new RegExp(s[i]),
                (typeof r[i]!='undefined')
                  ?r[i]
                  :''
               );
  }
  return t;
}

Test:
Code:
alert(
      new String('Käseknödelsüppchengenießer')
        .str_replace(
                     ['ä','ö','ü','ß'],
                     ['&auml;','&ouml;','&uuml;','&szlig;']
                    )
     );
 

Neue Beiträge

Zurück