如何在匹配的带注释的表达式UIMA RUTA中获取子字符串?

时间:2018-09-11 15:12:03

标签: uima ruta

我正在尝试实现匹配注释的子字符串。

Eg:
Input : 1A2S3DWER
Expected Output: WER
Expected Output: 1A2S3D

以下是我尝试过的内容:

Document{->RETAINTYPE(SPACE)};
((W|NUM) (W|NUM)*){REGEXP("([A-Z0-9]{9})")->MARK(EntityType)};

我不知道如何分隔匹配的注释。 请引导我。 预先感谢。

1 个答案:

答案 0 :(得分:0)

在您的示例中,“ DWER”是一个CAP。您需要将其拆分为多个注释,例如,使用简单的正则表达式规则:

DECLARE EntityType, ProductCode, Prefix;
ADDRETAINTYPE(WS);
(ANY+{-PARTOF(EntityType), PARTOF({NUM,W})}){REGEXP("([A-Z0-9]{9})")-> EntityType};
REMOVERETAINTYPE(WS);

EntityType->{"^(.*)(...)$"-> 1=Prefix, 2=ProductCode;};

免责声明:我是UIMA Ruta的开发人员