Java 如何避免saxon解析器/xalon解析器中节点/元素之间的空格
我有如下的输入片段 输入片段:Java 如何避免saxon解析器/xalon解析器中节点/元素之间的空格,java,xslt,xpath,saxon,xalan,Java,Xslt,Xpath,Saxon,Xalan,我有如下的输入片段 输入片段: <div class="a"> <table> <col width="4" /> <col width="8" /> <col width="5" /> <tbody> <tr> <td>ABC</td>
<div class="a">
<table>
<col width="4" />
<col width="8" />
<col width="5" />
<tbody>
<tr>
<td>ABC</td>
<td>DEF </td>
<td>GHI</td>
</tr>
</tbody>
</table>
</div>
<div class="x">
<table>
<col width="5" />
<col width="8" />
<col width="8" />
<tbody>
<tr>
<td>ABC</td>
<td>DEF </td>
<td>GHI</td>
</tr>
</tbody>
你需要使用
<xsl:strip-space elements="*"/>
在样式表的顶层,告诉它在解析时忽略只有空格的文本节点。虽然Ian的答案是正确的,但更干净的解决方案是
<xsl:when test="../following-sibling::div[1]/*[1]/self::table">
另外,如果您不关心div和它的表子级之间的任何中间元素,您可以简化为
<xsl:when test="../following-sibling::div[1]/table">
<xsl:when test="../following-sibling::div[1]/table">