![]() |
1
3
dsteinweg 让我走上正确的轨道。。。我最后做了:
|
![]() |
2
3
此转换忽略任何<b>没有任何节点子级的元素。本上下文中的节点指元素、文本、注释或处理指令节点。 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output omit-xml-declaration="yes"/> <xsl:template match="node()|@*"> <xsl:copy> <xsl:apply-templates select="node()|@*"/> </xsl:copy> </xsl:template> <xsl:template match="b[not(node()]"/> </xsl:stylesheet> 注意,这里我们使用了最基本的XSLT设计模式之一——使用 identity transform 并为特定节点覆盖它。
此技术功能非常强大,广泛用于此类任务,也可用于重命名、更改内容或属性、向任何可匹配的特定节点添加子节点或同级节点(除命名空间节点外的任何类型的节点均可用作<xsl:template/>的“匹配”属性中的匹配模式); 希望这有帮助。 干杯 迪米特里·诺瓦切夫 |
![]() |
3
2
我想知道这是否有效?
|
![]() |
4
1
看看这是否有效。
|
![]() |
5
1
另一种方法是执行以下操作:
|
![]() |
6
1
您可以将所有逻辑放在谓词中,并设置一个模板以仅匹配所需内容,然后将其删除:
编辑: 现在使用node(),如下面的Dimitri。 |
![]() |
7
0
xml:space=preserve 关于根元素
这样,空间中的空间就空了<b></b>标记被保留,因此可以与<b/>在XSLT中。
|
![]() |
JobProcessTask · 如何读取此xpath表达式? 2 年前 |