У меня есть проблема с поиском элементов в XPath, которая содержит определенную строку, игнорирующую оболочку символов.
Я хочу найти на странице HTML все узлы с идентификатором содержит текст «нижний колонтитул», игнорирующий его запись в верхнем или нижнем регистре.
В моем примере у меня есть другой html-текст:
<div id="footer">some text</div>
<div id="anotherfooter">some text</div>
<div id="AnotherFooter">some text</div>
<div id="AnotherFooterAgain">some text</div>
Мне нужно выбрать все узлы (или любую комбинацию в любом случае со словом «нижний колонтитул» в id) с помощью XPath.
В настоящее время я использую этот xpath, но не работает для идентификаторов UpperCase
"//*[contains(./@id, 'footer')]/@id"
Я выполнил несколько тестов с помощью translate (), но не работает так, как я ожидал.
Есть идеи?
EDIT: Я использую HtmlAgilityPack с работами с версией XPath 1.0.
Не уверен, что вы еще это пробовали, но это то, что я делаю для чувствительности к регистру, содержит поиск:
//*[contains(translate(./@id,'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz'), 'footer')]/@id
Я видел, что вы нашли свое решение, поэтому я отправляю этот ответ, если у других проблема такая же.