1
と一致していない私は、特定の正規表現が含まれている要素を維持する簡単なXSLTをしたい要素を削除":アイデンティティとXSLT正規表現
<example>
<abc>text</abc>
<ab>text</ab>
</example>
と一致していない私は、特定の正規表現が含まれている要素を維持する簡単なXSLTをしたい要素を削除":アイデンティティとXSLT正規表現
<example>
<abc>text</abc>
<ab>text</ab>
</example>
スタート変換し、名前あなたの正規表現に一致しない要素を抑制し、テンプレートを追加します。
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="*[not(matches(name(), 'a'))]"/>
</xsl:stylesheet>
説明:デフォルトでは、恒等変換によってすべてがそのまま出力にコピーされます。名前に「a」を付けずに何もしない要素に一致する単純なテンプレートを作成することで、この既定の動作をオーバーライドし、そのような要素が出力ドキュメントに表示されないようにします。
正確にこれに問題がありますか? https://www.w3.org/TR/xpath-functions/#func-matches –
こんにちは、私はxsltには新しく、同じXMLを返すだけの単純なスクリプトが必要ですが、一致しない要素はすべて削除します正規表現 – bdanger