ANTLR4 için oluşturduğum UCB Logo dilbilgisinin notasyonuyla ilgili bir sorum var. Bazı gösterimler ortaya çıkıp sormayı düşünemez. Eğer kimse açıklığa kavuşmak istiyorsa, minnettar olacağım. İşte Oldukça anlamıyorum gösterimler şunlardır:Bu ANLTR4 gösterimi ne anlama geliyor?
WORD
: {listDepth > 0}? ~[ \t\r\n\[\];] (~[ \t\r\n\];~] | LINE_CONTINUATION | '\\' ([ \t\[\]();~] | LINE_BREAK))*
| {arrayDepth > 0}? ~[ \t\r\n{};] (~[ \t\r\n};~] | LINE_CONTINUATION | '\\' ([ \t{}();~] | LINE_BREAK))*;
array
: '{' (~('{' | '}') | array)* '}';
NAME
: ~[-+*/=<> \t\r\n\[\]()":{}] (~[-+*/=<> \t\r\n\[\](){}] | LINE_CONTINUATION | '\\' [-+*/=<> \t\r\n\[\]();~{}])*;
Ben dizi onunla başlamak anlamına gelir {ve seviyeleri isteğe bağlı sayıda var, ama ile sonlandığı için} sanırım. Diğerlerinin normal ifadeler olduğunu mu söylüyorsun? Çok bilgim, regex farklı programlama dilleri için farklıdır.
Bunu doğru mu yaptım?