使用正则表达式替换空节点,javascript <(.*?)><\/\1>

我请说下,使用正则表达式替换空节点,javascript <(.*?)><\/\1>?

<script type="text/javascript" language="javascript">
var source = "<WebTable><changeType>1</changeType><Categories></Categories><Categories><changeType>1</changeType><ID>1</ID><CateName>小说</CateName><webIDHTML></webIDHTML><Webs></Webs><Webs></Webs></Categories><Categories><changeType>1</changeType><ID>2</ID><CateName>other</CateName><webIDHTML></webIDHTML><Webs></Webs><Webs></Webs><Webs></Webs></Categories></WebTable>";
var re = new RegExp("<(.*?)><\/\1>");
var target = source.replace(re, ""); //没有成功删除节点
var a = 0;

</script>
//要怎么改改代码?
//<(.*?)><\/\1> 可以匹配source中的很多元素,
这有个截图:
http://www.achapai.com/20100618webc.jpg

和这个帖子有关:
http://zhidao.baidu.com/question/160359028.html

谢谢。
一楼的代码不能得到正确结果.

截图
http://www.achapai.com/20100618webd.jpg
最新回答
想你想的,我骨头痛。

2024-10-22 15:35:36

呵呵
我居然跟过来了

你这么写吧
var a = "<WebTable><changeType>1</changeType><Categories><changeType>1</changeType><ID>0</ID><CateName>video</CateName><webIDHTML></webIDHTML><Webs></Webs><Webs></Webs><Webs></Webs></Categories><Categories></Categories><Categories><changeType>1</changeType><ID>2</ID><CateName>other</CateName><webIDHTML></webIDHTML></Categories></WebTable>";
function ClearXml(TempXmlStr,RegPatStr){
if(RegPatStr.test(TempXmlStr)){
TempXmlStr=TempXmlStr.replace(RegPatStr,"");
ClearXml(TempXmlStr,RegPatStr);
}
return TempXmlStr;
}
alert(ClearXml(a,/<(.*?)><\/\1>/))//ClearXml(a,/<(.*?)><\/\1>/)就是返回的值

__________________________________
哦,最后那句应该是

alert(ClearXml(a,/<(.*?)><\/\1>/ig))

这样就可以了
怪味

2024-10-22 14:48:03

we