我使用stanford nlp tokenregex来配置规则。我创建了一个类型为List<的新Annotation类。字符串>我想创建一个自定义注释键,以便在我的规则中使用它:
mykey = { type: "ANNOKEY", value: "com.conjecto.semanlp.Annotations$CustomAnnotations" }
ENV.defaultStringPatternFlags = 2
{
ruleType: "tokens",
pattern: ( ( [ { mykey:"test" } ]) ),
result: "TADAAM !"
}
搜索List<字符串>注释:我在StringAnnotationPattern.match中遇到错误:
java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.String
但我在核心看到了注释键" gazetteer"它引用了CoreAnnotations.GazetteerAnnotation.class:
public static class GazetteerAnnotation implements CoreAnnotation<List<String>> {
public Class<List<String>> getType() {
return ErasureUtils.uncheckedCast(List.class);
}
}
如果我使用此注释键,则会出现相同的错误。那么如何使用gazetteer / mykey注释键在列表中搜索字符串呢?
谢谢你, 布莱斯