UIMA Ruta:字符和数字组合的脚本

时间:2014-06-26 12:44:10

标签: ruta

我刚开始使用Ruta,我想编写一条规则,找到字符,数字和点(。)的任意组合。

(JAVA Regex for it - ([a-z0-9。] +))

例如 -

abcd.03ef0.3abc

03a.bcd.03eeff903a.bc

2 个答案:

答案 0 :(得分:1)

如下所示:

(SW | NUM | PERIOD)+{-> MyType};

或者是否还应包括大写字符:

(W | NUM | PERIOD)+{-> MyType};

之前更改过滤设置,如果之间不存在空格:

Document{-> RETAINTYPE(SPACE,BREAK,MARKUP)};

为了避免重叠匹配,您可以使用MARKONCE代替隐式动作,使用附加(否定)条件-PARTOF(MyType),或者使用GREEDYANCHORING更改匹配策略。

答案 1 :(得分:0)

我一直在看这个问题。我也有类似的问题。

我的问题是匹配用逗号分隔的大数字,如: 123343223

我写了类似于答案的规则,但它产生了太多的匹配:

123,343,223
123,343
343,223
....

我的规则如下:

(NUM COMMA)+ {-> LargeNum} NUM;

它不能完全匹配我想要匹配的东西,即。 123343223。问题是量词。您需要量词才能重复应用相同的规则。但结果是它产生了比预期更多的匹配。

显然,它需要进一步过滤。