JS Regex删除某些html标签之外的所有内容(包括标签)

JS Regex to remove everything outside certain html tags (including tags)

本文关键字:标签 包括 删除 Regex html JS      更新时间:2023-09-26

我有一个SOAP输出需要通过JS REGEX解析,(我知道有很多JS库将做这项工作,我知道REGEX不是解析html/xml的最好的东西,但在这种情况下,它必须通过REGEX完成)…

这是格式…

*huge header*
<NewDataSet>
*content*
</NewDataSet>
*rest of footer*

我需要删除<NewDataSet></NewDataSet>以外的所有内容(包括它们,并将标签留在*content*区域,不受影响…

我一直在努力使这项工作,但它似乎比我想象的更难…谁来帮帮我

这听起来像你有javascript,因为你提到要使用javascript正则表达式,为什么不使用这样的javascript ?

http://jsfiddle.net/gHwd6/1/

var ds = document.getElementsByTagName('NewDataSet')[0];
var t = ds.getElementsByTagName('NewTable')[0];
ds.parentNode.replaceChild(t, ds);

这里假设在NewDataSet中只有一个NewDataSet标记和一个表,您想要保留,命名为NewTable。这听起来像你只会有一个,所以你可以把NewTable改成你的名字。

编辑在看到您最近的评论/编辑似乎改变了您的要求后,尝试对您收到的数据执行此操作:

myData = myData.getElementsByTagName('NewDataSet')[0].innerHTML;

下面是一个示例,显示了它的应用程序(查看您的控制台,查看它是否返回所需的输出):http://jsfiddle.net/qmnNn/

请通过检查答案或评论来回应,让我们知道是否有什么对你有效,或者你可能仍然有什么问题。

相关文章: