如何检索article-field1中的文本?
<title>Testing</title>
<link>http://example.org</link>
<description>Description</description>
<language>en-us</language>
<lastBuildDate>Mon, 13 Feb 2012 00:00:00 +0000</lastBuildDate>
<item>
<title>Title Here</title>
<link>http://example.org/2012/03/27/</link>
<description><![CDATA[
<div id="article-field1"><a href="http://example.org/test1">Test 1</a></div>
<div id="article-field2">123</div>
<pubDate>Tue, 2 Mar 2012 00:00:00 +0000</pubDate>
</item>
我试过用
//description/div[@id="article-field1"]/text()
有任何建议吗?
由于
答案 0 :(得分:3)
从我看到的数据是CDATA标签。这可以防止解析其内容。
有关详细信息,请参阅How do I retrieve element text inside CDATA markup via XPath?。
答案 1 :(得分:2)
单次调用普通XPATH处理器无法做到这一点。
您有两种选择:
答案 2 :(得分:2)
//description/div[@id="article-field1"]/a/text()
如果删除了格式错误的CDATA
标记,则会添加根元素并关闭相应的“description”标记。这假设部分粘贴原始XML的错误,这在表达式中是有意义的。基本上,原始查询缺少a
元素。