gpt4 book ai didi

regex - UIMA RUTA : regular expression in WORDLIST

转载 作者:行者123 更新时间:2023-12-01 13:31:58 24 4
gpt4 key购买 nike

有没有办法在 WORDLIST 中使用正则表达式?
我需要实现与 https://issues.apache.org/jira/browse/UIMA-3382 中提到的相同的内容.

或者有什么替代方法可以解决它?

编辑 :
WORDLIST 被定义为文本项列表。如果我有一个要标记为相同类型的正则表达式列表,该怎么办。有没有办法做到这一点?

例如- 我想在文档中查找日期,
但是日期有多种格式,因此正则表达式是一种更简洁的方式来涵盖所有可能的情况。
所以我试图使用下面的语法,但唯一匹配的是那些没有特殊正则表达式语法的单词的情况。

DECLARE Date;
WORDLIST DateFormatList='DateFormat.regex';
Document{-> MARKFAST(Date, DateFormat, true,1)};

我可以在规则中更改哪些内容,以便将 DateFormatList 中的项目视为正则表达式?

谢谢

最佳答案

如果没有志愿者实现,在不久的将来将不支持词表中的正则表达式。问题在于词表在查找过程中使用的是特里树而不是 FST,这使得所需的功能无法直接实现。

在一些罕见的情况下,例如对于可选序列,可以使用单词列表模拟所需的功能。

如果您想检测日期,我强烈建议您使用 UIMA Ruta 中的常规规则。组合和利用东西更容易。常见的例子是一个非常简单的规则:

ANY{INLIST(MonthsList) -> MARK(Month), MARK(Date,1,3)} 
PERIOD? NUM{REGEXP(".{2,4}") -> MARK(Year)};

如果你想坚持使用正则表达式,那么你可以使用 simple regexp rules 的列表:
"regexp1" -> Date;
"regexp2" -> Date;
"regexp3" -> Date;

这些规则还支持特征分配和捕获组。您要使用的功能的区别在于语法(几个规则而不是一个简单的列表)和性能(按顺序应用正则表达式)。

(我是UIMA Ruta的开发者)

关于regex - UIMA RUTA : regular expression in WORDLIST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24443900/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com