Я пытаюсь разобрать системный файл журнала Android. Все идет хорошо, но это не работает, когда я пытаюсь проанализировать параметры из содержимого журнала. Моя грамматика, обеспечивающая анализ содержимого журнала
logcontent : (параметр|текст|СПЕЦИАЛЬНЫЙ СИМВОЛ|ЦИФРА|МИНУС|РАВНО|ТОТОЧКА|ТОЧКА|АПОСТРОФ|ЛЕВАЯ СКОБКА|ПРАВАЯ СКОБКА|СКОСАЯ ЧАСТЬ|'_'|WS )+;
параметр: text+ EQUAL (integer|floatnumber|expponentfloat) ;
Параметр имеет текст внутри правила, поэтому ANTLR говорит, что грамматика неоднозначна. Я пробовал с другими определениями правил, но это не работает. Я хотел бы разобрать этот фрагмент журнала
AcquireWakeLock flags = 0x2000000a tag = KEEP_SCREEN_ON_FLAG uid = 1000 pid = 373
Как я могу получить весь журнал в строковом формате и список пар «параметр = значение»
флаги = 0x2000000a
тег=KEEP_SCREEN_ON_FLAG
ИД=1000
код = 373