Wie passt man eine feste Anzahl von Zeichen in ANTLR 3 an?

8

Ich möchte ISO 8601-Daten in meiner ANTLR-Grammatik analysieren.

%Vor%

Ich habe folgende Einträge in meiner Grammatikdatei:

%Vor%

Ich weiß, dass ich eine oder mehrere mit DIGIT+ und null oder mehr mit DIGIT*

abgleichen kann

Während dies funktioniert, gibt es eine einfachere Syntax, um genau 2 DIGIT zu spezifizieren?

    
Jarrod Roberson 03.05.2011, 05:31
quelle

2 Antworten

3

Ich bin mir ziemlich sicher, dass ANTLR 3 außer * , + und ? keine Quantoren hat. DIGIT DIGIT DIGIT DIGIT scheint der vernünftigste Weg zu sein, das gewünschte Verhalten zu erreichen.

Siehe Ссылка

    
Daniel Lubarov 03.05.2011, 05:57
quelle
7
  

Jarrod Roberson schrieb:

     

Während dies funktioniert, gibt es eine einfachere Syntax, um genau 2 DIGIT zu spezifizieren?

Nein, DIGIT DIGIT ist die einzige Möglichkeit, genau zwei Ziffern zu finden. ANTLR unterstützt nicht leider so etwas wie DIGIT{2} .

    
Bart Kiers 03.05.2011 05:58
quelle

Tags und Links