Ich habe eine XML-Datei, die mehrere Elemente mit dem Namen FileName1, FileName2, FileName3 usw. enthält. Ich muss das Dokument für diese Elementnamen überprüfen und sie dann "FileName" umbenennen.Wie überprüft man, ob ein Elementname eine bestimmte Zeichenfolge in XSLT enthält, und diese Elemente dann umbenennt?
Hier ist der XML:
<?xml version="1.0" encoding="UTF-8"?>
<ProcessData>
<Transformed>
<ConnectionZone>Internal</ConnectionZone>
<Directory>/Test/Inbox</Directory>
<FTPProfileID>XYZ</FTPProfileID>
<FileName1>Test1.txt</FileName1>
<FileName2>Test2.txt</FileName2>
<MoveDirectory>/Test/MovedFiles</MoveDirectory>
<Operation>MV</Operation>
<RenameExt>.csv</RenameExt>
</Transformed>
</ProcessData>
Hier ist, was ich in der XSLT habe bisher:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" />
<xsl:strip-space elements="*"/>
<xsl:template match="/">
<table>
<xsl:if test="//*[contains(name(), 'FileName']">
<xsl:element name="FileName">
</xsl:if>
</table>
</xsl:template>
</xsl:stylesheet>
Nichts, was ich versuche, so weit als erfolgreich erwiesen hat. Ich kann anscheinend keine Übereinstimmungen in meiner xsl: if-Anweisung finden.
Bitte lassen Sie mich wissen, wenn Sie eine bessere Möglichkeit finden, dies zu tun! Ich muss nur das letzte Zeichen (Ziffer) jedes Elementnamens entfernen, der "FileName" enthält.
Danke!