Parsen von text-Datei mit XSLT

Ich habe eine plain-text-Datei wie folgt aufgebaut:

!ITEM_NAME
Item value
!ANOTHER_ITEM
Its value
...

Ist es möglich, sich mit XSLT-Datei ähnlich:

<?xml version="1.0" encoding="UTF-8" ?>
<document>
  <ITEM_NAME>Item value</ITEM_NAME>
  <ANOTHER_ITEM>Its value</ANOTHER_ITEM>
  ...
</document>

BEARBEITEN

Tut mir Leid, ich habe nicht klar gesagt. Ich bin versucht zu erreichen, diese transformation mit der Visual Studio 2005-XSLT-engine. Ich habe versucht, sowohl die der Lösungen, und ich bin sicher, dass die korrekt sind. Aber Visual Studio 2005 kennt Sie nicht, die ungeparste-text-Funktion.

  • Dies ist aber nicht möglich, da nur gültige Eingaben zu XSLT ist wohlgeformtes Xml.
  • nach dieser Frage, ist es möglich, link
  • Interessant. Der heutige Eintrag in der "Eine Glühbirne kann auch verwendet werden zum braten ein steak." - Liste ... danke für den link 🙂
  • Oder "mit Kanone auf eine fliege". Jeder andere Vorschlag, um die Eingabe von text-Datei mehr "beherrschbar"? Vielleicht mit .NET framework? 😉
  • Auch können Sie eine XSLT-2.0-Prozessor wie Saxon 9 oder AltovaXML oder XmlPrime?
  • Lieber @O. R. Mapper, FYI, XSLT 2.0 wurde erfolgreich und effizient in der Implementierung einer generischen LR-1-parser und auf dieser Grundlage für das Parsen von Sprachen wie JSON und XPath 2.0. Der Einsatz moderner Analyse-Methoden, oder von regulären Ausdrücken, wo Sie am besten geeignet sind, ist genau das Gegenteil von "Eine Glühbirne kann auch verwendet werden, zum braten, ein steak".
  • Ich bin nicht convined der EIGNUNG, wenn reguläre Ausdrücke mit der Erfassung von Gruppen verwendet werden, die bereits für eine einfache Aufgabe wie das Lesen aus einer Datei Zeile für klug und erkennen der ersten Buchstaben der Zeilen, aber es ist gut zu wissen, XSLT kann verwendet werden, die über den ursprünglich beabsichtigten Umfang bei Bedarf 🙂
  • Gut, Ihre Daten, ist 6-7 Jahre alt. XPath 3.0-standard-Funktionen, um die Zeilen einer text-Datei -- unparsed-text-lines(): w3.org/TR/xpath-functions-30/#func-unparsed-text-lines . Die F & O 3.0 ist bereits eine Candidate Recommendation des W3C. Wie für den ersten Buchstaben einer Zeile, kann man noch die XPath-1.0-Funktion substring. In XPath 3.0-Funktion head() (w3.org/TR/xpath-functions-30/#func-head) bietet einen generischen Zugriff auf die Haupt-Sequenz.
  • Ich basiert meine Antwort auf deine Antwort von 11 Stunden vor, die ich vermutet hätte berücksichtigen den aktuellen Stand der Entwicklung.
  • Meine Antwort ist für jemanden, der wahrscheinlich wenig oder keine Ahnung von XSLT 2.0-oder beschränkt ist, durch Ihre management-verwenden Sie nur XSLT 1.0. Sehr wenige Menschen wissen, XSLT 3.0/XPath 3.0 vorhanden ist. Im Fall, Sie sind einer von diesen, können Sie sehen, was leicht möglich ist) in der reinen XPath 3.0 nur hier: xfront.com/Pearls-of-XSLT-and-XPath-3-0-Design.pdf
  • Danke für den link, das sieht interessant aus 🙂

InformationsquelleAutor sblandin | 2013-04-12
Schreibe einen Kommentar