Enrico: Nicht korrekt geschlossener Ausdruck in HTML-Parser

Beitrag lesen

problematische Seite

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