xpath
xpath copied to clipboard
is there a way to group selectors to specify precedence?
I'm trying to generate the following xpath string (so that I get the deepest element that contains the text I need)
(//*[contains(normalize-space(string(.)), 'Text')]/@id)[position() = last()]
but
XPath.anywhere[XPath.string.n.contains('Text')].attr(:id)[XPath.position.equals(XPath.last)]
generates
//*[contains(normalize-space(string(.)), 'Text')]/@id[(position() = last())]
which is kinda logical, considering how the XPath gem works in general, but not what I want :)
I've looked through the code and looks like there's no way to add parenthesis to the on
in a where
expression, but maybe I'm missing something
I can't do the filtering in the ruby-land because this is only a part of my bigger XPath selector so I need it to return only one node
Interesting! I don't think this is currently possible, unfortunately.
yeah, that's what i was afraid of :)
thx for the response