var xml:XML =
<data>
<season id="00">
<project id="text"/>
<project id="test"/>
<project id="move"/>
<project id="moser"/>
<project id="moment"/>
<project id="save"/>
<project id="safe"/>
<project id="search"/>
</season>
<season id="01">
<project id="send"/>
<project id="serve"/>
<project id="service"/>
<project id="mondey"/>
<project id="mother"/>
<project id="tesla"/>
<project id="tiser"/>
<project id="spacmonk"/>
</season>
</data>;
trace( xml..project.( @id.match( /se/ ) ).toXMLString() );
Пояснение:
xml // using the XML data in our xml variable
.. // find descendants at any level
project // that is an element of type project
( // open an expression to evaluate
@id // using attribute 'id' of our project elements
.match( // find matching 'id' values using regular expression
/se/ // find the string 'se' anywhere in the string that is evaluated
) // close match()
) // close expression
Чтобы сопоставить только элементы проекта с атрибутами id, которые начинаются с "se", вам просто нужно изменить регулярное выражение как обычно:
/^se/
И заканчивается на "se":
/se$/
... и т. Д.