我正在尝试从字符串中删除HTML标记。现在我可以删除完整的HTML代码,例如<div class="test">dadsasdsad</div>
为我提供输出dadsasdsad
。
但我无法移除部分代码,例如class="test">dadsasdsad</div>
或testing<div class=
我使用的正则表达式是
strippedText[i] = fragments[i]
.replace(/<(?:.|\n)*?>/gm, '')
.replace(replaceAT, '<span style=font-weight:800>')
.replace(replaceET, '</span>');
此处fragments[i]
包含输入<div class="test">dadsasdsad</div>
;
答案 0 :(得分:2)
strippedText[i] = fragments[i]
// full tags
.replace(/<[^>]+>/gm, '')
// partial tags
.replace(/^[^>]+>/gm, '')
.replace(/<[^>]+$/gm, '');
注意^具有不同的含义:括号内的“not”,括号外的“start”。
部分标签不需要/ gm,但我留下了它们,因为我不知道你的上下文以及你是如何获得部分标签的。
答案 1 :(得分:0)
使用javascript
即可:
function removeHTMLTags(htmlString) {
if(!htmlString) { return; }
var mydiv = document.createElement("div");
mydiv.innerHTML = htmlString;
return mydiv.textContent || mydiv.innerText || '';
}
<子> [Source] 子>
答案 2 :(得分:0)
我的简单 JavaScript库有一个名为“strip_tags()”的函数,可以帮助您完成长时间的工作。
只是说你有一个带有HTML格式标签的句子,你想删除它们,只需这样做:
strip_tags("<p>This <em>sentence</em> contains <strong>a lot</strong> of tags!</p>");
这将输出“这句话包含很多标签!” (在文档网站上测试)。
要了解有关此功能的更多信息,请阅读http://docs.funcjs.webege.com/strip_tags().html处的文档,如果可能,请通过网站上的反馈表留下反馈。
希望这可以帮助您和其他任何有同样问题的人! :)