Я использую ParseKit для анализа единиц измерения. Для этого я должен поставить грамматику. Я попробовал поиск в Интернете, но это не привело меня далеко. Хотя это забавное упражнение по-своему, я хочу убедиться, что все правильно. ParseKit ожидает BNF грамматики, как это:BNF Грамматика для единиц измерения
@start = number units;
units = unit+ | unit+/unit+;
unit = prefix baseUnit | baseUnit;
prefix = '' | 'milli' | 'micro' | 'pico';
baseUnit = 'm' | 'meter' | 'g' | 'gram'
Я ищу, чтобы поддержать ввод как:
25 m²
25 m^-3
25 m**-5/kg**-2
25 m/s squared
25 mm² per second
25 m/s
5 kg meters per second squared
3 m-kg/s^2
3 m kilograms
Вы ищете помощь в улучшении вашей размещенной грамматики, чтобы она полностью поддерживала ваш желаемый вход? – rmaddy
@rmaddy хорошо было бы хорошо иметь ссылку на официальную/неофициальную грамматику, но улучшения приветствуются. –
Что такое 'me'? Что такое 'kge'? –