使用<link>
OR type="application/rss+xml"
(RSS和Atom供稿)选择type="application/atom+xml"
元素的XPath表达式是什么
link[@rel='alternate'][@type='application/rss+xml']
选择RSS Feed link[@rel='alternate'][@type='application/atom+xml']
选择Atom供稿但是选择它们的单个XPath表达式是什么?
谢谢。
答案 0 :(得分:47)
使用:
link[@rel='alternate'][@type='application/rss+xml' or @type='application/atom+xml']
请参阅http://www.w3.org/TR/xpath/#NT-OrExpr
你也可以用union来完成这个
link[@rel='alternate'][@type='application/rss+xml']|link[@rel='alternate'][@type='application/atom+xml']
但or
会这样做。
答案 1 :(得分:12)
如果你想获得幻想并使用XPath 2.0,它会更优雅(但可能令人困惑,取决于谁可能正在阅读代码)来写这样:
link[@rel='alternate'][@type = ('application/rss+xml', 'application/atom+xml')]
原因是XPath 2.0重新定义'='以应用于序列,这意味着如果在比较左手序列中的项目与比较右手项目时存在一个匹配,则上述比较返回true序列。如果要与之比较的事物列表是动态的,这可能非常有用。