ruta - Ruta 转义特殊字符
问题描述
我正在使用 Ruta 脚本来识别货币,但遇到了美元符号 ($) 等特殊字符的问题。
我尝试了简单的字符:
W{REGEXP("(dollar|nzd|$)") -> MARK(EntityType)};
逃避它:
包 uima.ruta.example;
W{REGEXP("(dollar|nzd|\$)") -> MARK(EntityType)};
在第一种情况下,我的模式无法识别,在第二种情况下,我的编辑器给了我一个错误。
识别特殊字符的正确方法是什么?
干杯。
解决方案
在 UIMA Ruta 中,特殊字符是默认种子注释的一部分SPECIAL
。您的规则仅匹配单词标记W
;因此它不会触发。
如果您只想匹配 $ 作为特殊字符,那么您可以SPECIAL
使用条件限制注释,REGEXP
就像您对W
:
// I spent $100.
SPECIAL{REGEXP("\\$"} -> Currency} NUM{-> Amount};
让我知道这是否有帮助。
推荐阅读
- firebase - 源存储桶在 Firebase Firestore 导入网络工具中不可见,即使在授予所需权限后也是如此
- reactjs - 如何使用 Firebase Emulators 使用 Jest 测试我的 React 应用程序?
- unity3d - 如何仅在 RawImage 上显示 Sprite?
- nosql - Ashburn 和其他地区是否提供永远免费的 Oracle NoSQL 数据库云服务?
- python - 将带有日期的列转换为东部时间并记入 DST
- angular - rxjs:带索引的地图
- azure - Azure Bastion 在重新启动后工作
- powershell - 电源壳输出滤波器
- ios - 使 WKWebView 中的某些链接在 Safari 中打开,而不是 Webview
- python - 创建同义词数据框