【问题标题】:XPath: logical ORXPath:逻辑或
【发布时间】:2011-10-15 10:00:43
【问题描述】:

请帮忙在 XPATH 中使用逻辑 OR 运算符并从这两个请求中选择一个:

1) .//span[@class=\'fob12\']

2) .//p[@class=\'fob12\']

它们仅在标签上有所不同。

【问题讨论】:

    标签: c# xpath logical-operators


    【解决方案1】:

    我可能遗漏了一些东西,但以下应该可以工作!?

    .//span[@class=\'fob12\'] | .//p[@class=\'fob12\']
    

    【讨论】:

      【解决方案2】:

      您想要union expression,即|,所以XPath 是:

       .//span[@class="fob12"] | .//p[@class="fob12"]
      

      【讨论】:

        【解决方案3】:

        另一个 XPath:

        .//*[(self::p | self::span)[@class = 'fob12']]
        

        【讨论】:

          【解决方案4】:

          另外一个(按要求使用 OR):

          ".//*[(self::p or self::span) and @class = 'fob12']"
          

          【讨论】:

          【解决方案5】:

          我会把它写成.//(p|span)[@class='fob12']。但我认为这需要 XPath 2.0 IIRC。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2018-10-20
            • 2012-08-23
            • 1970-01-01
            • 1970-01-01
            • 2021-10-08
            • 2014-12-08
            • 2011-12-01
            • 2015-11-30
            相关资源
            最近更新 更多