我尝试在复杂的表结构中选择"tr"内的多个"td".
$name = $sxml->xpath("
//table[@cellspacing=0 and @cellpadding=2 and @class='mn2']
/tr[not(contains(@class, 'mn'))]/td[2]
|
//table[@cellspacing=0 and @cellpadding=2 and @class='mn2']
/tr[not(contains(@class, 'mn'))]/td[5]
|
//table[@cellspacing=0 and @cellpadding=2 and @class='mn2']
/tr[not(contains(@class, 'mn'))]/td[7]
");
Run Code Online (Sandbox Code Playgroud)
一切都很好,我得到了我想要的东西,但这似乎有点矫枉过正.如何选择多个"td",如"td [2,5,7]",而不是使用Union表达式"|" ?
它可以在以下帮助下完成or:
//table[@cellspacing=0 and @cellpadding=2 and @class='mn2']
/tr[not(contains(@class, 'mn'))]/td[position()=2 or position()=5 or position()=7]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1655 次 |
| 最近记录: |