Guten Abend,
sorry, dass ich euch wieder bemühen muss.
Es geht um einen recht guten HTML-Parser, den ich hier gefunden habe, und der soweit sehr gut funktioniert.
Nun wollte ich den JavaScript-Code komprimieren, um ihn kleiner zu machen, hier macht mir aber folgende Funktion einen Strich durch die Rechnung:
rest.replace(attr, function(match, name)
{
var value = arguments[2] ? arguments[2] : arguments[3] ? arguments[3] : arguments[4] ? arguments[4] : fillAttrs[name] ? name : "";
attrs.push({name: name, value: value, escaped: value.replace(/(^|[^\\])"/g, '$1\\\"')
|
-----------------------------------------------------------------------+ [1]
}) <--- [2]
}); <-- [3]
Im Editor PSPad wird mir die Zeichenfolge ab einschließlich dem mit [1] markierten Anführungszeichen bis zum Schluss in roter Schrift angezeigt, was mir signalisiert, dass diese Zeichenkette nicht korrekt abgeschlossen ist.
Will ich nun aber alles zusammenführen, dann sind auch die mit [2] und [3] schließenden Klammern rot.
Wie muss ich den Ausdruck unter value.replace escapen, damit er korrekt geschlossen wird, ohne aber die Funktionalität außer Kraft zu setzen?
Vielen Dank und Gruß, Enrico