Javascript 删除脚本中的HTML标记

Javascript 删除脚本中的HTML标记,javascript,python,regex,replace,Javascript,Python,Regex,Replace,我在网上找到了这段代码。它用一个句子把每个单词都和这个单词联系起来。但它也有弱点:如果一个句子中有HTML,这个脚本不会删除它 例如:它用“http://www.merriam-webster.com/dictionary/asserted' 您能告诉我如何更改此代码,以便将“断言的””更改为“http://www.merriam-webster.com/dictionary/asserted” var content = document.getElementById("sentence").

我在网上找到了这段代码。它用一个句子把每个单词都和这个单词联系起来。但它也有弱点:如果一个句子中有HTML,这个脚本不会删除它

例如:它用“
http://www.merriam-webster.com/dictionary/asserted
'

您能告诉我如何更改此代码,以便将“
断言的”
”更改为“
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;
var content=document.getElementById(“句子”).innerHTML;
var percentrationless=content.replace(/[,\/\\!$%\\\\\\\\\\\ ^?&\*;:{}=\-\-\\\\\\`~(())“]/g,”;
var mixedCase=无标点。替换(/\s{2,}/g);
var finalString=mixedCase.toLowerCase();
var words=(finalString).split(“”);
var标点词=(内容).split(“”);
var=”;
对于(i=0;i
函数stripAllHtml(str){
如果(!str | |!str.length)返回“”
str=str.replace(/.*?/igm,,)
设tmp=document.createElement(“DIV”);
tmp.innerHTML=str;
返回tmp.textContent | | tmp.innerText | |“”;
}
stripAllHtml('测试')
此函数将剥离所有HTML并仅返回文本

希望这对您有用

函数stripAllHtml(str){
如果(!str | |!str.length)返回“”
str=str.replace(/.*?/igm,,)
设tmp=document.createElement(“DIV”);
tmp.innerHTML=str;
返回tmp.textContent | | tmp.innerText | |“”;
}
stripAllHtml('测试')
此函数将剥离所有HTML并仅返回文本

希望这对您有用

这个正则表达式/{1}/g应该用空格替换字符串中介于两个正则表达式和括号之间的任何文本

var str=“你爱蛋糕怎么样?”
str=str.replace(/{1}/g,“”)
document.writeln(str);
此正则表达式/{1}/g应将字符串中介于两个正则表达式和括号之间的任何文本替换为空白。此

var str=“你爱蛋糕怎么样?”
str=str.replace(/{1}/g,“”)

document.writeln(str);
如果需要删除可以使用的HTML标记和HTML实体

const text = '<p>test content </p><p><strong>test bold</strong>&nbsp;</p>'
text.replace(/<[^>]*(>|$)|&nbsp;|&zwnj;|&raquo;|&laquo;|&gt;/g, '');
const text='测试内容

测试粗体

' text.replace(/]*(>|$)||&zwnj;|»;|«;|/g');

如果需要删除可以使用的HTML标记和HTML实体,结果将是“test content test bold”

const text = '<p>test content </p><p><strong>test bold</strong>&nbsp;</p>'
text.replace(/<[^>]*(>|$)|&nbsp;|&zwnj;|&raquo;|&laquo;|&gt;/g, '');
const text='测试内容

测试粗体

' text.replace(/]*(>|$)||&zwnj;|»;|«;|/g');

结果将是“测试内容测试粗体”"

可能的重复您可能希望在regexp中转义
,如
\.
,如您使用
\-
等。可能的重复您可能希望在regexp中转义
,如
\.
,如您使用
\-
等。可能的重复谢谢你的回答。你能告诉我在脚本中该函数的位置吗?@МаааааааааПааааааааURLs@gaurav乔希非常感谢您的帮助和耐心。@Маааааааааааааааdd right Flag或upvote my answer非常感谢您的回答。请告诉我在脚本中的何处放置此函数?@Маааааааааааааааа107URLs@gaurav乔希非常感谢您的帮助和耐心。@Маааааааа如果这对你有用,那么请添加正确的标志或投票给我的答案。非常感谢你为帮助我所做的努力。这真的很有价值。非常感谢你为帮助我所做的努力。这真的很有价值。