JAPE 可以匹配 LHS 中的段落注释吗?

Can JAPE match paragraph Annotation in LHS?

我正在研究数学单词问题求解器,并希望使用 JAPE 将整个问题传递给我的 GATE Embedded 应用程序。我正在使用 GATE IDE 来显示输出,以及 运行 GATE 组件的管道。每个问题都会在自己的段落中,每个文档都会有几个问题。

有没有办法使用 JAPE 左侧正则表达式来匹配任何段落?

我这里看到三个选项(可能会有更优雅的方案):

1) 使用像这样的简单规则:

Phase: find

Input: Token

Options: control = once

Rule:OneToken

(

{Token}

)

在 RHS 中,您可以获得文本并使用标准 Java 方法从纯文本中获取段落。

2) 使用 LHS(如果你真的只想要 LHS)

Rule: NewLine

(

({SpaceToken.string=="\n"}) |

({SpaceToken.string=="\r"}) |

({SpaceToken.string=="\n"}{SpaceToken.string=="\r"}) |

({SpaceToken.string=="\r"}{SpaceToken.string=="\n"})

):left

构建注解NewLine,然后编写类似于1) 的Jape 规则,但使用NewLine 而不是Token。从 outputAS 中获取所有换行符并构建您的段落注释。

3) 有时原始标记中可能会有正确的段落。在这种情况下,您可以使用 Annotation Set Transfer PR 并在 Default Annotations Set 中获取它们。

为什么不直接使用 RegEx 句子拆分器 PR 来使用 Split 作为 jape 规则中的输入?