如何删除以可识别字符开头和结尾的字符串,例如来自JSON文件的HTML标记?

时间:2016-11-26 03:34:33

标签: javascript html json

我有一个JSON文件,其中包含作为字符串的特定属性的值。在许多这些字符串中,嵌入的C-family标记具有不同的链接。我希望浏览整个对象并删除所有这些标记,同时保留标记内的内容。

1)删除所有<a href=".... </a>

2)删除所有<a .... >

2 个答案:

答案 0 :(得分:0)

您可以尝试使用正则表达式或将内容作为HTML传递给Element并以文本形式返回。请查看以下示例。

&#13;
&#13;
var data = {
  "content": "First part of the text. <b>This could be bold</b>. <span class=\"highlight\">Span with attribute.</span>"
};

var divElement = document.createElement('div');

divElement.innerHTML = data.content;

document.getElementById('text-content').innerHTML = divElement.innerText;
&#13;
<div id="text-content"></div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您可以使用正则表达式删除所有<a ...></a>代码:

jsonObject.someString = jsonObject.someString.replace(/<[\/]{0,1}(a|A)[^><]*>/g,"");

如果您的对象很大并且希望以递归方式删除对象树中的所有锚标记,请查看this answer

JSFiddle