如果href包含特定单词,我如何获取href的内容,例如:
<a href="/contacts.asp" class="">click here</a>
如何根据其中包含“联系人”一词来抓取“contacts.asp”?
尝试了//a/@href[contains(@href,'contact')]
的变体,但似乎没有任何地方
答案 0 :(得分:1)
尝试了
//a/@href[contains(@href,'contact')]
的变体,但似乎没有任何地方
你快到了。
在contains
测试中,您已经在href
属性的上下文中,因此您的测试应该针对.
,而不是您的xpath所具有的@href
,它试图在 href
属性下查找href
属性。这当然行不通。
尝试
//a/@href[contains(.,'contact')]
这表示“查找href
元素上的所有a
属性,以便href
属性值本身包含contact
”。
请注意,这会返回href
属性;你是usnig的图书馆将有办法挑选价值。
答案 1 :(得分:0)
在你的路径中,你 @href,所以你的包含不起作用。
试试这样:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" omit-xml-declaration="yes" indent="yes" version="1.0" encoding="utf-8"/>
<xsl:template match="/">
<xsl:value-of select="//a[contains(@href,'contact')]"/>
</xsl:template>
</xsl:stylesheet>