Suche…


Bemerkungen

ANTLR (ANother Tool for Language Recognition) ist ein leistungsstarker Parser-Generator zum Lesen, Verarbeiten, Ausführen oder Übersetzen von strukturiertem Text oder Binärdateien. Es wird häufig verwendet, um Sprachen, Tools und Frameworks zu erstellen. ANTLR generiert aus einer Grammatik einen Parser, der Parsing-Bäume erstellen und durchlaufen kann.

Antlr-Versionen
Antlr besteht aus zwei großen Teilen, der Grammatik (Grammatikdateien) und den generierten Codedateien, die von der auf Zielsprache basierenden Grammatik abgeleitet werden. Die antlr-Versionen haben das Format V1.V2.V3:

  • V1: Änderung in V1 bedeutet, dass eine neue Syntax von Features in Grammatikdateien eingeführt wurde
  • V2: Änderung in V2 bedeutet, dass neue Funktionen oder wichtige Korrekturen in die generierten Dateien eingefügt wurden (z. B. Hinzufügen neuer Funktionen).
  • V3: steht für Fehlerbehebungen oder kleinere Verbesserungen

Laufzeitbibliotheken und Codegenerierungsziele
Das Antlr-Tool ist in Java geschrieben, kann jedoch Parser und Lexer in verschiedenen Sprachen generieren. Um den Parser und den Lexer auszuführen, benötigen Sie auch die Laufzeitbibliothek von antlr neben dem Parser- und Lexer-Code. Die unterstützte Zielsprache (und Laufzeitbibliotheken) sind folgende:

  • Java

  • C #

  • Python (2 und 3)

  • JavaScript

Versionen

Ausführung Veröffentlichungsdatum
2,0 1997-05-01
3,0 2011-01-19
4,0 2013-01-21
4.1 2013-07-01
4.2 2014-02-05
4.2.1 2014-03-25
4.2.2 2014-04-07
4.3 2014-06-19
4.4 2014-07-16
4,5 2015-01-23
4.5.1 2016-07-16
4.5.2 2016-01-30
4.5.3 2016-03-31
4.6 2016-12-15
4.7 2017-03-30

Hallo Welt

Eine einfache Hallo-Welt-Grammatik finden Sie hier :

// define a grammar called Hello
grammar Hello;
r   : 'hello' ID;
ID  : [a-z]+ ;
WS  : [ \t\r\n]+ -> skip ;

Um dieses .g4-Beispiel zu erstellen, können Sie den folgenden Befehl über das Betriebssystem / die Befehlszeile Ihres Betriebssystems ausführen:

Java -jar antlr-4.5.3-complete.jar Hello.g4

//OR if you have setup an alias or use the recommended batch file

antlr4 Hello.g4

Das Erstellen dieses Beispiels sollte zu folgender Ausgabe im Verzeichnis "Hello.g4" führen:

  1. Hello.tokens
  2. HelloBaseListener.java
  3. HalloLexer.java
  4. HelloLexer.tokens
  5. HelloListener.java
  6. HelloParser.java

Wenn Sie diese Dateien in Ihrem eigenen Projekt verwenden, müssen Sie die ANTLR-JAR-Datei mit einschließen. Um alle diese Dateien mit Java zu kompilieren, führen Sie im selben Betriebsverzeichnis oder per Pfad den folgenden Befehl aus:

javac *.java


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow