спасибо! либа выглядит мощно. впрочем, тоже не похоже, чтобы поддерживала динамически задаваемые словари.
мне подошел бы и glr/earley парсер, если бы в правилах вывода можно было бы задавать правые части, соответствие которым проверялось бы кодом, внешним по отношению к грамматике и парсеру. т.е. моей функцией прямо проверять... пока такого не видел)
scannerless GLR parser with custom recognizers in python
(опять же, на всякий: scannerless -- значит он делает токенизацию одновременно с применением правил из грамматики, а custom recognizers -- в самих правилах можно задавать функции из питона, ну а GLR -- что на выходе получаются все варианты.)
Привет. Ребят, можете подсказать, как сделать так, чтобы Natasha возвращала фамилию в том виде, что и была. Например, если такая фамилия: extractor = NamesExtractor() g = extractor("Рэй Брэдбери") то вернет брэдберущий: Name(first=None, last='брэдберущий', middle=None, nick=None) Можно вернуть last в первоначальном виде?
В yargy готовится крупное обновление. Интерфейс natasha не поменяется, а вот API yargy немного изменится. Если кто-то использует yargy напрямую просьба почитать https://github.com/natasha/yargy/pull/48 . Изменения случатся через 1-2 месяца