Un petit cas pratique à copier-coller directement dans Flash :


var xmlData : XML = 
<root>
    <data>
        <item id="1">
            <title><![CDATA[Item 1]]></title>
            <content><![CDATA[Xerorecat pererib erepudit. ]]></content>
            <tags><![CDATA[pomme poire abricots]]></tags>
        </item>
        <item id="2">
            <title><![CDATA[Item 2]]></title>
            <content><![CDATA[Mod ut mo ea invelicia. ]]></content>
            <tags><![CDATA[train tram bus]]></tags>
        </item>
        <item id="3">
            <title><![CDATA[Item 3]]></title>
            <content><![CDATA[Te poriae sum velit dusdae? ]]></content>
            <tags><![CDATA[velo pied roller]]></tags>
        </item>
    </data>
</root>;

function searchxmlSource : XMLpattern : String ):Array {
    var aList:Array=[];
    for each (var node:XML in xmlSource.descendants().( child("tags").toString().indexOf(pattern)>=0 )) {
        aList.push(node.@id.toString());
    }
    return aList;
}

trace("Result :: " + search(xmlData"velo").toString());
// Result :: 3

Dans la version finale j'ai ajouté du toLowerCase() et un petit StringUtils.noAccent();

Infos +