Я получаю
sly.lex.LexError: Illegal character '0' at index 0
, когда запускаю свой код. Это только часть ошибки. Я использую Sly в Python
Вот мой лексер:
import sly
from sly import Lexer
class mylexer(Lexer):
tokens = { NAME, EXPR, ASSIGN, EQUALS, NUM, STRING, }
literals = { '(', ')', '{', '}' }
ignore = '\t\n'
NAME = r'[A-Z_a-z][a-zA-Z_0-9-]*'
EXPR = r'([0-9]+\d?[-\+\*/^]+)+'
Вот файл, который я запустил:
from lexer import mylexer
data = open("file.in").read()
lexer = mylexer()
for tok in lexer.tokenize(data):
print('type=%r, value=%r' % (tok.type, tok.value))
Вот файл.in:
0*5