Hannes Weninger: JavaScript replaceAll

Hallo,

ich komm mit der JavaScript Methode "replaceAll" nicht zurecht. Ich hab diesen String:

 var myMessage = 'Thats the first line<br /> thats the second line<br /> thats the third line.';

und möchte alle "<br />"s durch "\n" ersetzen mittels:

 var messageFormatted = myMessage.replace('<br />', ' ');

das funktioniert aber nicht. Meine Frage wär jetzt, wie ich das richtige machen kann (mit RegEx o.ä.)

Danke! Hannes

  1. Moin,

    ich komm mit der JavaScript Methode "replaceAll" nicht zurecht.

    gibt's die denn überhaupt?

    Ich hab diesen String:

     var myMessage = 'Thats the first line<br /> thats the second line<br /> thats the third line.';
    

    und möchte alle "<br />"s durch "\n" ersetzen mittels:

     var messageFormatted = myMessage.replace('<br />', ' ');
    

    das funktioniert aber nicht.

    Natürlich nicht. Du ersetzt ja auch hier nicht mit \n, sondern mit einem Leerzeichen. Außerdem ersetzt replace() nur das erste Vorkommen des gesuchten Ausdrucks, wenn es mit einem String als Suchmuster aufgerufen wird.

    Meine Frage wär jetzt, wie ich das richtige machen kann (mit RegEx o.ä.)

    Genau. Gibt das Suchmuster nicht als String an, sondern als RegExp. Da kannst du dann den Modifier g verwenden (global), der dafür sorgt, dass alle Vorkommen ersetzt werden.

    So long,
     Martin

    --
    Nothing travels faster than the speed of light with the possible exception of bad news, which obeys its own special laws.
    - Douglas Adams, The Hitchhiker's Guide To The Galaxy
    1. Danke für die antwort!