在nodejs或Javascript中完成空XML标记?

在nodejs或Javascript中完成空XML标记?,javascript,regex,xml,node.js,Javascript,Regex,Xml,Node.js,我目前拥有大量数据(每个500 mb),我正在使用lodash和cheerio解析和获取其中的部分数据。 新数据的问题是,它有一些空标记被错误地替换 例如: <apple></apple> 被替换为 </apple> 我想确保以前的格式保持不变。我可以使用任何正则表达式来查找这些新的空标记并用旧的正确格式替换它吗?您的意思可能是被替换(而不是) 和在XML中是等效的,任何符合XML规范的流程都不会对它们进行不同的处理,因此您不应该在意文档中使用了哪

我目前拥有大量数据(每个500 mb),我正在使用lodash和cheerio解析和获取其中的部分数据。 新数据的问题是,它有一些空标记被错误地替换

例如:

<apple></apple>

被替换为

</apple>


我想确保以前的格式保持不变。我可以使用任何正则表达式来查找这些新的空标记并用旧的正确格式替换它吗?

您的意思可能是
替换(而不是

在XML中是等效的,任何符合XML规范的流程都不会对它们进行不同的处理,因此您不应该在意文档中使用了哪一个

如果您真正的意思是将
替换为
,那么您可能有一个无法修复的损坏文件,因为您不知道
apple
的任何给定结束标记是否应该与空的
apple
元素相关联

例如,对执行字符串级替换,将
替换为

<apple>one</apple>
1
会导致

<apple>one<apple></apple>
1

你可能是说
取代了(不是

在XML中是等效的,任何符合XML规范的流程都不会对它们进行不同的处理,因此您不应该在意文档中使用了哪一个

如果您真正的意思是将
替换为
,那么您可能有一个无法修复的损坏文件,因为您不知道
apple
的任何给定结束标记是否应该与空的
apple
元素相关联

例如,对执行字符串级替换,将
替换为

<apple>one</apple>
1
会导致

<apple>one<apple></apple>
1

格式不太好。

我目前有几个章节是正确的,我想完成它们。很明显,我可以检查他们前面是否有起始标签。所以,除非他们没有任何开始标记,我只想在结束标记之前加上它,不管中间是否有任何东西,我可以很明显地检查他们之前是否有任何开始标记。不,总的来说,你不能,你也没有声明允许你发表这样的声明的限制。我的声明是“我可以”对不起,但是你声明的自信和你质询的天真是不一致的。祝你好运。我目前有几个部分是,我想完成他们。很明显,我可以检查他们前面是否有起始标签。所以,除非他们没有任何开始标记,我只想在结束标记之前加上它,不管中间是否有任何东西,我可以很明显地检查他们之前是否有任何开始标记。不,总的来说,你不能,你也没有声明允许你发表这样的声明的限制。我的声明是“我可以”对不起,但是你声明的自信和你质询的天真是不一致的。祝你好运