我在互联网上找到了这段代码。它需要一个句子,并使每个单词与这个词链接。但它有弱点:如果一个句子中有HTML,这个脚本不会删除它。在脚本中删除HTML标签
例如:它取代“<b>asserted</b>
”与“http://www.merriam-webster.com/dictionary/<b>asserted</b>
”
你能告诉我该怎么在这个代码改变它来改变“<b>asserted</b>
”到“http://www.merriam-webster.com/dictionary/asserted
”。
var content = document.getElementById("sentence").innerHTML;
var punctuationless = content.replace(/[.,\/#!$%\؟^?&\*;:{}=\-_`~()”“"]/g, "");
var mixedCase = punctuationless.replace(/\s{2,}/g);
var finalString = mixedCase.toLowerCase();
var words = (finalString).split(" ");
var punctuatedWords = (content).split(" ");
var processed = "";
for (i = 0; i < words.length; i++) {
processed += "<a href = \"http://www.merriam-webster.com/dictionary/" + words[i] + "\">";
processed += punctuatedWords[i];
processed += "</a> ";
}
document.getElementById("sentence").innerHTML = processed;
的[JavaScript的可能重复:如何去掉字符串中的HTML标签?](http://stackoverflow.com/questions/5002111/javascript-how-to-strip-html-tags-from-string) – evolutionxbox
你可能想要像你的正则表达式中的'.' ' \“,就像你用'\ -'做的那样。 – Azamantes
可能的重复[Strip Text from Text JavaScript](http://stackoverflow.com/questions/822452/strip-html-from-text-javascript) – Andreas