Parsing 解析Jison中的换行符

Parsing 解析Jison中的换行符,parsing,jison,Parsing,Jison,嗨,我是Jison的新手,我正在努力学习。我尝试在线jison解析器计算器代码。对于表达式来说,它工作得很好 5*PI^2. 但是,当我在换行符上添加一个新表达式时,解析器不会接受该换行符并尝试解析另一个表达式,就像它在同一行一样 Input : 5*PI^2 23+56 解析器将其视为: 5*PI^223+56 这失败了,因此我想知道如何在jison parsor中解析换行符。这里的问题是,jison解析器需要解析一个表达式,并尝试评估整个文本作为一个整

嗨,我是Jison的新手,我正在努力学习。我尝试在线jison解析器计算器代码。对于表达式来说,它工作得很好

5*PI^2. 
但是,当我在换行符上添加一个新表达式时,解析器不会接受该换行符并尝试解析另一个表达式,就像它在同一行一样

Input :
        5*PI^2
        23+56
解析器将其视为:

5*PI^223+56

这失败了,因此我想知道如何在jison parsor中解析换行符。

这里的问题是,jison解析器需要解析一个表达式,并尝试评估整个文本作为一个整体是否有效。在本例中,您给出的是两个单独的表达式,它们不能一起正确计算,这就是它失败的原因。例如,如果您评估

5*PI^2
+
23+56
那就没有问题了。这是因为Jison试图解析给定的整个值,它允许您在多行上分解复杂表达式

但是,如果您愿意,这并不会阻止您单独计算行。不要将字段中的全部文本传递给parse函数,只需使用JavaScript的字符串拆分方法(在新行字符“\n”上拆分)将文本拆分为一个数组,然后循环并分别将内容的每一行传递给parse函数