【发布时间】:2011-07-13 10:37:41
【问题描述】:
首先,我想对比我更有经验的人说,这必须在正则表达式中完成。由于奇怪的情况,无法访问 DOM 解析器。
所以我有一个完整的 HTML/XHTML 字符串,并想从中删除除链接之外的所有内容。基本上只有<a> 标签很重要。我需要标签来完整地保存它们的信息,所以 href、target、class 等,如果它是一个自终止标签或者它有一个单独的结束标签,它应该可以工作。即<a />或<a></a>
感谢大家的帮助!
【问题讨论】:
-
这几乎是不可能的。什么是完整的 HTML 字符串?删除元素后,您想对字符串做什么?每个浏览器都有一个 HTML 解析器;)在 HTML 中,结束
</a>标记是必需的。 -
即时进行 ajax 调用并获取完整的 html 页面。我在 Firefox 扩展程序中执行此操作,因此变得更加困难。这个想法是获取 html ajax 响应,将其转储到隐藏字段中,然后我可以访问它的元素。
-
@Daniel,到目前为止,我的方式包括将 script 和 img 和 head 标签字符串化。但我宁愿剥离一切,只拥有链接标签!到目前为止: data = data.replace(/(?:.|\n|\r)+?/ig, ""); data = data.replace(/