从字符串中删除XML属性

时间:2012-04-25 09:29:27

标签: regex string

A有一个像'<node attr="some_value">'这样的字符串。如何从此字符串中删除attr="some_value"?我只知道attr属性名称,并且不知道"some_value"值 附:我正在使用JavaScript,但任何语言的解决方案都会很棒。提前谢谢。

3 个答案:

答案 0 :(得分:2)

试试这个:需要jquery。

var xml = '<node attr="some_value">';
var newXml = $(xml).removeAttr('attr');

答案 1 :(得分:1)

使用正则表达式来玩XML正在乞求灾难。我会使用内置的Xml功能来实现这一目标。

来自w3schools.com

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName('book');

document.write(x[0].getAttribute('category')); document.write("<br />");

x[0].removeAttribute('category');

document.write(x[0].getAttribute('category'));

XML在哪里

<bookstore>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="children">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="web">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="web" cover="paperback">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>

答案 2 :(得分:0)

经典解决方案:使用字符串函数,例如:

str = str.substring(0,str.indexOf("attr")-1) + ">"