< br />之后的文本的XPath [英] XPath for text after <br/>

查看:93
本文介绍了< br />之后的文本的XPath的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

希望通过此代码块获得$ 2.00的XPath:

Looking to get the XPath of $2.00 with this block:

<td class="undefined" colspan="6">
   <table class="history-bill-payments" cellspacing="0" cellpadding="0" border="0" align="center" width="99%">
<thead>
<tbody>
   <tr>
      <td valign="top">04/19/2016</td>
      <td valign="top" style="text-align:right; height:">
         $3.00
         <br/>
         $2.00
      </td>

我尝试了这些,但无济于事

I have tried these but to no avail

$I->CanSeeElement("//table[contains(tbody/tr[2]/td/table/tbody/tr/td[2]/following-sibling::br)]"); 
$I->CanSeeElement("//table[contains(tbody/tr[2]/td/table/tbody/tr/td[2]/preceding-sibling::br/text(),'$2.00')]"); 
$I->CanSeeElement("//table[contains(tbody/tr[2]/td/table/tbody/tr/td[2]/following-sibling::br/text(),'$2.00')]");

在Firefox中使用firepath我得到了这个XPath

Using firepath in Firefox I get this XPath

html / body / div [4] / div [2] / div / div / div / div / div / table / tbody / tr [2] / td / table / tbody / tr / td [ 2]

html/body/div[4]/div[2]/div/div/div/div/table/tbody/tr[2]/td/table/tbody/tr/td[2]

我能够获得$ 3.00的xpath

I was able to get the xpath of $3.00

$I->CanSeeElement("//table[contains(tbody/tr[2]/td/table/tbody/tr/td[2]/text(),'$3.00')]");


推荐答案

在XPath 1.0中,给定节点集 contains()仅会评估集合中的第一个节点。这就是为什么您的初始XPath成功找到包含'$ 3.00'的文本节点,而不是包含'$ 2.00'的文本节点的原因。

In XPath 1.0, given a node-set, contains() would only evaluates the first node in the set. That's why your initial XPath successfully find text node that contains '$3.00', but not the one that contains '$2.00'.

与您的 $ 3.00 xpath的工作方式接近的XPath表达式如下:

XPath expression that is close to the way your xpath of $3.00 works would be as follow :

//table[tbody/tr[2]/td/table/tbody/tr/td[2]/text()[contains(.,'$2.00')]]

上面的XPath通过应用 contains()在单个文本节点上,而不是一次传递多个文本节点。

The XPath above works by applying contains() on individual text node instead of passing multiple text nodes at once.

这篇关于&lt; br /&gt;之后的文本的XPath的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆