Проблема Xpath-запроса с использованием Objective C - PullRequest
0 голосов
/ 06 августа 2011

Я хочу извлечь ссылки из этого HTML-файла, используя Objective-C.

<html>
 <head>
  <base href='http://example.com/' />
  <title>Example website</title>
 </head>
 <body>
  <div id='images'>
   <a href='image1.html'>Name: My image 1 <br /><img src='image1_thumb.jpg' /></a>
   <a href='image2.html'>Name: My image 2 <br /><img src='image2_thumb.jpg' /></a>
   <a href='image3.html'>Name: My image 3 <br /><img src='image3_thumb.jpg' /></a>
   <a href='image4.html'>Name: My image 4 <br /><img src='image4_thumb.jpg' /></a>
   <a href='image5.html'>Name: My image 5 <br /><img src='image5_thumb.jpg' /></a>
  </div>
 </body>
</html>

Вот запрос Xpath:

//a[contains(@href, "image")]/@href

Но проблема здесь в том, что это ошибкина кавычки вокруг текста изображения в запросе!

Error

Ответы [ 2 ]

2 голосов
/ 06 августа 2011

Вы должны будете избегать двойных кавычек, чтобы использовать их внутри строки в кавычках:

@"//a[contains(@href,\"image\")]/@href"

Или использовать одинарные кавычки, если XPath поддерживает это:

@"//a[contains(@href,'image')]/@href"
1 голос
/ 06 августа 2011

Поскольку выражение XPath ограничено символами в двойных кавычках, вы не можете использовать эти символы внутри него.Вместо этого вам придется перейти на одинарные кавычки:

//a[contains(@href, 'image')]/@href
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...