Я использую antlr для анализа и перезаписи SQL-запроса.Как определить незанятые ключевые слова с antlr
у меня есть:
select : SELECT ;
fragment S : 's' | 'S' ;
....
fragment LETTER : 'a'..'z' | 'A'..'Z' ;
SELECT : S E L E C T ;
IDENTIFIER : LETTER+ ;
определить зарезервированные ключевые слова, и пусть они быть не чувствительны к регистру.
Мой вопрос в том, как я могу определить не зарезервированные ключевые слова?
Что такое зарезервированное ключевое слово? Я думал, что вы имели в виду IDENTIFIER, но у вас уже есть такое правило ... –
Belowe - это то, что я нашел на http://www.contrib.andrew.cmu.edu/~shadow/sql/sql3bnf.sep93.txt – safarisoul
< зарезервированное слово> :: = ABSOLUTE | ДЕЙСТВИЯ | ACTOR | ДОБАВИТЬ | ПОСЛЕ | ALIAS | ВСЕ | ALLOCATE | ALTER <зарезервированное слово> :: = ADA | C | CATALOG_NAME | ЦЕПЬ | CHARACTER_SET_CATALOG | CHARACTER_SET_NAME – safarisoul