2016-11-07 5 views
0

Iは、2つのdivクラスのXPath値

<div class="tooltip-series"> 
 
<span class="tooltip-series-name" style="color: rgba(255, 102, 102, 0.701961);">#1/123</span> 
 
<span class="tooltip-series-value">68</span> 
 
</div> 
 
<div class="tooltip-series"> 
 
<span class="tooltip-series-name" style="color: rgba(108, 157, 198, 0.6);">#2/234</span> 
 
<span class="tooltip-series-value">64.4</span> 
 
</div>

を有し、I、値(68または64.4)を見つけるXPathを必要とする所与のパラメータ(123又は234)に記載の方法。あなたのサンプルXML文書を考える

+0

多くのことを( "//クラス( 'ツールチップシリーズ-値')// ( 'class =' tooltip-series ')には、(@ class、' tooltip-series-name '(' 123 ')が含まれています。 ) ")])") $ x( "class = 'ツールチップシリーズ'と(テキスト( '123'))]」) $ x(" div [contains(@ class、 '123 ')] ") – Kinga

答えて

1

は、XPath 1.0の表現が出力さ68

//span[contains(., '/123')]/following-sibling::span/text() 

あなたはおそらくパラメータが発見された方法を適応する必要がありますが、あなたのアイデアを得る必要があります。

+0

はい、パラメータがありますが、これは問題ではありません。 最後に、パラメータがいくつかの場所にあったので、// div [@ class = 'tooltip-series']/span [contains(。、 '{0}')]/following-sibling :: spanを追加しました。それらを区別するために – Kinga

0

は、ここでは、ターゲットとしている要素を見つけるために、多少、より正確な方法です:例えば、 $ xに

//div[contains(concat('#', @class, '#'), '#tooltip-series#')] 
    [contains(
     concat(span[contains(@class, 'tooltip-series-name')], '#'), 
     '/123#' 
    )] 
    /span[contains(@class, 'tooltip-series-value')]