嘿!
有没有办法用 xslt 将 ?oxy_comment_start 转换为有效的 xml 标签(如
app></app>
)?
<?oxy_comment_start author="author" timestamp="today" comment="this: is a comment"?>THIS<?oxy_custom_end?>
我想要什么
<app>
<lem>
THIS
</lem>
<rdg>
this: is a comment
</rdg>
</app>
我有什么:
<xsl:template match="?oxy_comment_start">
<app>
<lem>
<xsl:apply-templates/>
</lem>
<rdg>
<xsl:apply-templates select="@*[local-name() !='comment']"/>
</rdg>
</app>
</xsl:template>
我收到错误消息: “描述:无法将表达式 {.?oxy_comment_start} 转换为模式”
有谁知道这是否可能以及如何实现?
您拥有的是两个处理指令,它们之间有一个文本节点。
您可以使用类似以下内容解析第一个处理指令:
<xsl:template match="processing-instruction('oxy_comment_start')">
<app>
<lem>
<xsl:value-of select="following-sibling::text()[1]"/>
</lem>
<rdg>
<xsl:value-of select="." />
</rdg>
</app>
</xsl:template>
这应该给你:
<app>
<lem>THIS</lem>
<rdg>author="author" timestamp="today" comment="this: is a comment"</rdg>
</app>
如何从内容中解析出注释取决于您使用的处理器。