Строка или число для символов с помощью jflex
Я использую jflex, и я должен распознавать символы, которые могут быть:
- Нормальные символы, такие как "а"
- Числа, такие как \126
Я сделал это регулярное выражение (Integer это макрос уже определен):
Character = (\'.\')|(\'\\{Integer}\')
Я не знаю, нормально ли это, но моя настоящая проблема в том, что я не знаю, какой код мне нужно поместить, чтобы превратить оба типа строк в символы, потому что это не работает:
{Character} { this.yylval = new Character(yytext());
return Parser.CHARACTER; }
Любая идея?
1 ответ
Вы должны написать действительный Java: единственный конструктор для персонажа Character(char)
но вы вызываете Character(String)
,
Вам нужно извлечь то, что вы хотите от yytext()
,