Xpath: можно ли получить элементы без предков ?

Ganer

Новичок
Xpath: можно ли получить элементы без предков ?

подскажите куда копать: разбираю довольно большой html, по запросу "//TABLE/TR/TD" получаю огромный массив, что вроде как логично. по запросу "TR/TD[contains(.,'Истец')]" ожидал получить небольшой массивчик, но получаю все тот же огромный массив с первым элементом TABLE и всеми его нодами.
такой же получаю и по "TR/TD[contains(.,'Истец')]/child::node()"

второй вопрос: почему "TD[contains(.,'Истец')]" может возвращать пустой массив ?
 

Ganer

Новичок
Автор оригинала: atv
попробуй TR/TD[contains(text(),'Истец')]
интересно, "//TR/TD[contains(text(),'Истец')]" получаю инфо о нужных TD, но ожидал получить //TR/TD. может где-то есть развернутые пояснения по xpath (можно на английском). а то я явно что-то глобально не понимаю.
 

FB3

Новичок
Тогда к примеру так (если я правильно понял смысл) //TR[TD[contains(text(),'Истец')]] . Грубо говоря слева от квадратных скобок то, какие ноды нужно выбрать, а в квадратных скобках - условия выборки. Чтобы было понятнее, можно переписать //TR/TD[contains(text(),'Истец')] вот таким способом: TD[parent::tr][contains(text(),'Истец')]. Короче, вариантов записи много. http://ru.wikipedia.org/wiki/XPath (+ ссылки внизу страницы).
 
Сверху