Есть ANTLR4, есть задача парсить нечто вроде:
expr + "blah $some[func("s")].id test${expr}blah"
но стандартной грамматикой это не решается, использование mode требует отдельной граматики для лексера и парсера, но https://github.com/antlr/antlr4/issues/307
Как быть?