私はParseKitを使用して測定単位を解析しています。これを行うには、文法を提供する必要があります。グーグルを試してみましたが、うまくいきませんでした。それは私自身で楽しい運動ですが、私はそれが正しく行われることを確認したいと思います。ParseKitは、次のような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