Я делаю приложение, которое будет анализировать команды в Scala. Пример команды будет:Подход к анализу текста в Scala
todo get milk for friday
Таким образом, план должны иметь довольно умный анализатор разорвать линию друг от друга и признать командную часть и тот факт, что есть ссылка на время в строке.
В общем, мне нужно сделать токенизатор в Scala. Поэтому мне интересно, какие у меня варианты для этого. Я знаком с регулярными выражениями, но я планирую сделать в SQL, как функция поиска также:
search todo for today with tags shopping
И я чувствую, что регулярные выражения будут негибкие исполнители команды с большим количеством вариаций. Это заставляет меня думать о реализации какой-то грамматики.
Каковы мои варианты в этом отношении в Scala?