Использование Xpath и HtmlAgilityPack для поиска всех элементов с внутренним текстом, содержащим определенное слово или слова

Я пытаюсь создать простую поисковую машину, используя HtmlAgilityPack и Xpath с C # (.NET 4). Я хочу найти каждый узел, содержащий определяемое пользователем поисковое слово, но, похоже, я не могу правильно понять XPath. Например:

<HTML>
 <BODY>
  <H1>Mr T for president</H1>
   <div>We believe the new president should be</div>
   <div>the awsome Mr T</div>
   <div>
    <H2>Mr T replies:</H2>
     <p>I pity the fool who doesn't vote</p>
     <p>for Mr T</p>
   </div>
  </BODY>
</HTML>

Если указанное поисковое слово - «Мистер Т», мне нужны следующие узлы:

, Второй
,

и второй

. Я пробовал множество вариантов doc.DocumentNode.SelectNodes ("// text () [contains (.," + Searchword + ")]"); , но мне всегда кажется, что у меня получается каждый отдельный узел во всем DOM.

Мы будем очень признательны за любые подсказки, которые направят меня в правильном направлении.

5
задан Wayne Burkett 20 January 2012 в 23:05
поделиться