使用XPath查找包含两件东西的链接
问题描述:
我正在使用XPath解析HTML文档以查找特定链接。具体的链接有一个域名和字符'@'。使用XPath查找包含两件东西的链接
//a[@*[contains(., 'domain')]] | //a[@*[contains(., '@')]]"
将返回链接与 '域' 或 '@' 在他们,我需要 '域' 和 '@'
我一直在尝试使用:
//a[@*[contains(., 'domain')]] & //a[@*[contains(., '@')]]"
但那不好。
答
你可以阅读有关XPath运算符here。 &
运算符不存在。 此外,没有必要选择元素两次。 你可以使用任何
//a[@*[contains(., 'domain')]][@*[contains(., '@')]]
或
//a[@*[contains(., 'domain')] and @*[contains(., '@')]]
答
应该是一样容易:
//a[@*[contains(., 'domain')]][@*[contains(., '@')]]