xpath find node that does not contain child

2019-01-23 01:47发布

问题:

I'm trying to create some xpath that will find all a tags that do not contain img tags, so that something such as

<a href="http://aol.com">link</a>

matches, but

<a href="http://yahoo.com"><img src="http://yahoo.com/logo.png"></a>

does not.

Of course I could do this in a two-part search but I'm sure there must be some way to do this with xpath.

回答1:

//a[not(img)]

Try and avoid the // if you can, though. Also note this will only exclude as that directly contain imgs.