我在使用xml查询时遇到问题。下面是xml文档。我需要做的就是在cdata部分显示文本。我写了这个查询:/item/title/text()
,但它崩溃了,不起作用。
<title>
<![CDATA[Envious at Envie! 50% off anything you want, anytime you want!]]>
</title>
我正在使用iphone xcode的hpple库。这是我的代码:
NSData *urlData = [[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:[@"http://www.twangoo.com/userfiles/rss/rss_hong-kong.xml" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]];
TFHpple *xpathParser = [[TFHpple alloc] initWithHTMLData:urlData];
NSArray *title = [xpathParser search:@"//rss/channel/item[1]/title/text()"];
TFHppleElement *element2 = [title objectAtIndex:0];
NSString *titleString = [element2 content];
NSLog(@"@%", titleString)
它返回nil。
答案 0 :(得分:0)
使用此XPath:/item/title/text()
答案 1 :(得分:0)
如果您可以提供有关您的环境,语言,库使用的语言以及产生的实际错误消息的更多信息,这将有很大帮助。
但是,我认为xsl样式表中的有效xslt语句是
...
<xsl:value-of select="/item/title"/>
...
如果您以编程方式在PHP中访问该数据,那将是:
$doc = new DOMDocument;
$doc->loadXML("<item><title>My name is Kevin</title></item>");
$xpath = new DOMXPath($doc);
$query = "/item/title";
$entries = $xpath->query($query);
foreach ($entries as $entry) { print $entry->nodeValue; }