Hanuchin: Reguläre Ausdrücke - String Replace mit Ausnahmen

Beitrag lesen

Hallo,

ich möchte folgendes Umsetzen:
Alle Vorkommnisse von einem String innerhalb eines DOM Objekts sollen ausgetauscht werden, außer es befindet sich in einem Attribut-Wert.

Es existiert ein HTML Gerüst:

  
<div id="body>  
  <div class="mod">  
    <h2>Lorem ipsum</h2>  
    <p>ipsum dolore,.... </p>  
  </div>  
  <div class="mod">  
    <h2>Lorem ipsum</h2>  
    <a href="#" title="Lorem ipsum">Linkbezeichnung</a>  
    <p>ipsum dolore,.... </p>  
  </div>  
  ....  
</div>  

In dem HTML Gerüst will ich nun sagen, tausche "ipsum" gegen "Blindtext", aber nur dann, wenn es sich nicht in einem Attribut in dem Fall title="" befindet.

Funktioniert sowas?

Das Austauschen alleine ist recht simpel:
var srcTerm = "ipsum"
var destTerm = "Blindtext"
var str = $("#body").html();
$("#body").html(str.replace(new RegExp(srcTerm,"gi"), '<em class="term">' + destTerm + '</em>'));

Ich hab nun versucht, mit der Beschränkung ?! zu arbeiten, aber ich verstehe es anscheinend nicht wirklich.

Muss noch sagen, dass ich mit jQuery 1.4 arbeite.
danke!
Hanu