0
Ich habe die folgende Funktion, die mehrere Ersetzungsaktionen auf einer einzigen Zeichenfolge inputHtml
führt. Es funktioniert gut, dauert aber zu lange. Ist es möglich, es zu beschleunigen, indem man sie kombiniert?Javascript: Führen Sie mehrere "ersetzen" in einer einzigen Zeichenfolge
/* Receives HTML code and returns the plain text contained in the HTML code */
function decodeHtml(inputHtml) {
const commentsRemoved = inputHtml.replace(/<!--[\s\S]*?-->/gm, '');
const linebreaksAdded = commentsRemoved.replace(/<br>/gm, '\n');
const tagsRemoved = linebreaksAdded.replace(/<(?:.|\n)*?>/gm, '');
const linebreaksRemoved = tagsRemoved.replace(/^\s*[\r\n]/gm, '');
const plainText = entities.decode(linebreaksRemoved);
return plainText;
}
Es ist sicherlich möglich! Was hast du probiert? –
Das '(?:. | \ N) *?' Ist was es wirklich verlangsamt. Wird es bereits als '[\ s \ S] *? –
Verwenden Sie nodejs? –