Ruta 转义特殊字符

Ruta escaping special characters

我正在使用 Ruta 脚本来识别货币,但我遇到了美元符号 ($) 等特殊字符的问题。

我尝试使用简单字符:

W{REGEXP("(dollar|nzd|$)") -> MARK(EntityType)};

转义它:

包裹uima.ruta.example;

W{REGEXP("(dollar|nzd|$)") -> MARK(EntityType)};

在第一种情况下我的模式无法识别,在第二种情况下我的编辑器给我一个错误。

识别特殊字符的正确方法是什么?

干杯。

在 UIMA Ruta 中,特殊字符是默认种子注释的一部分 SPECIAL。您的规则仅匹配单词标记 W;因此它不会开火。

如果您只想匹配 $ 作为特殊字符,那么您可以像 W:[=16 那样使用 REGEXP 条件限制 SPECIAL 注释=]

// I spent 0.
SPECIAL{REGEXP("\$"} -> Currency} NUM{-> Amount};

如果有帮助请告诉我。