XPath с регулярным выражением соответствует значению атрибута

Все -

Я искал и возился часами в попытке взломать этот, но у меня все еще проблемы. У меня есть данные XML ниже:

<game id="2009/05/02/arimlb-milmlb-1" pk="244539">
  <team id="109" name="Arizona" home_team="false">
    <event number="9" inning="1" description="Felipe Lopez doubles to left fielder Chris Duffy.  "/>
    <event number="15" inning="1" description="Augie Ojeda flies out to center fielder Mike Cameron.  "/>
    <event number="23" inning="1" description="Chad Tracy doubles to right fielder Joe Sanchez.  "/>
    <event number="52" inning="2" description="Mark Reynolds lines out to left fielder Chris Duffy.  "/>
    <!-- more data here -->
  </team>
</game>

Я пытаюсь получить общее количество узлов событий, которые содержат текст «double» в значении атрибута description. Это то, что я пытался до сих пор, но безрезультатно (irb выдает ошибку):

"/game/team/event/@description[matches(.,' doubles ')]"

Поскольку я просто пытаюсь сопоставить фрагмент значения атрибута description, можно использовать функцию XPath 2.0 "спички", верно? Если да, то что я делаю не так?

Заранее благодарим за любую помощь!

42
задан Gabe 8 May 2011 в 04:21
поделиться