C# 反语语法规范错误

C# 反语语法规范错误,c#,grammar,bnf,abstract-syntax-tree,irony,C#,Grammar,Bnf,Abstract Syntax Tree,Irony,我是一个全新的反讽者(大约10年前我在uni学习过BNF),现在开始创建一个准实坐标解析器 下面是我认为应该能够解析输入的语法类(完整代码) 70 50' 44" N 1 13' 66" E 但是,当我在语法浏览器中运行它时,我在1:4“expected:space”处得到一个语法错误 你能看到我的代码有什么问题吗 谢谢 乔恩 修好了 我手动期望使用空格,但语法已经配置(默认情况下)将“空格”字符视为空白标记。将非termanal规则更新到下面修复了我的问题 decimalAmount.Rul

我是一个全新的反讽者(大约10年前我在uni学习过BNF),现在开始创建一个准实坐标解析器

下面是我认为应该能够解析输入的语法类(完整代码)

70 50' 44" N 1 13' 66" E
但是,当我在语法浏览器中运行它时,我在1:4“expected:space”处得到一个语法错误

你能看到我的代码有什么问题吗

谢谢

乔恩

修好了

我手动期望使用空格,但语法已经配置(默认情况下)将“空格”字符视为空白标记。将非termanal规则更新到下面修复了我的问题

decimalAmount.Rule = integer | integer + point + integer;

minute.Rule = integer + minuteMarker;
second.Rule = integer + secondMarker;
imperialMagnitude.Rule = integer + minute + second;
imperialLatitude.Rule = imperialMagnitude + lat;
imperialLongitude.Rule = imperialMagnitude + lon;
imperialCoordinate.Rule = imperialLatitude + imperialLongitude;
decimalAmount.Rule = integer | integer + point + integer;

minute.Rule = integer + minuteMarker;
second.Rule = integer + secondMarker;
imperialMagnitude.Rule = integer + minute + second;
imperialLatitude.Rule = imperialMagnitude + lat;
imperialLongitude.Rule = imperialMagnitude + lon;
imperialCoordinate.Rule = imperialLatitude + imperialLongitude;