代码之家  ›  专栏  ›  技术社区  ›  DaveF

“position()”是否必须显式包含在此Xpath中?

  •  0
  • DaveF  · 技术社区  · 4 年前

    这将按预期返回所有第一个“nd”

    select="osm/way/nd[1]"
    

    这将返回所有的last:

    select="osm/way/nd[last()]"
    

    这将同时返回:

    select="osm/way/nd[position() = 1 or position() = last()]" 
    

    是否有删除position()函数的语法? 像这样的东西,但有效吗?

    select="osm/way/nd[[1] or [last()]]"
    
    0 回复  |  直到 4 年前
        1
  •  0
  •   Martin Honnen    4 年前

    关于允许一种新的语法来选择一个范围,一直存在一些争论 https://github.com/qt4cg/qtspecs/issues/50#issuecomment-799228627 例如 osm/way/nd[#1,last()] 可能在未来的XPath4中工作,但目前仍有很多争论,并怀疑新的运算符是否有用 osm/way/nd[position() = (1, last())] .