【发布时间】:2012-02-08 05:25:16
【问题描述】:
这是一个 XML:
<nodes>
<node id="0" a="hello" b="this"/>
<node id="1" c="is" d="a" e="test"/>
</nodes>
有没有办法使用 E4X 过滤来查找具有“this”作为值的属性的节点?
【问题讨论】:
标签: xml actionscript-3 filtering
这是一个 XML:
<nodes>
<node id="0" a="hello" b="this"/>
<node id="1" c="is" d="a" e="test"/>
</nodes>
有没有办法使用 E4X 过滤来查找具有“this”作为值的属性的节点?
【问题讨论】:
标签: xml actionscript-3 filtering
你可以试试这样的:
xml.node.( find(attributes(), "this") );
function find(atts:XMLList, value:String):Boolean {
for each(var a in atts) if(a==value) return true;
return false;
}
但我个人认为组装新 XMLList 的简单循环更容易理解,因此是更好的代码实践...更简单的解决方案(即循环),我认为不应该使用它们......
【讨论】:
myXML.node.(@b == "this")
上面应该可以工作,但如果你指的是任何属性,那么我认为你已经看过它了。虽然你可以用正则表达式来做到这一点。
【讨论】: