【问题标题】:UIMA Ruta wordlist case ignoreUIMA Ruta 单词表大小写忽略
【发布时间】:2014-08-03 16:10:30
【问题描述】:

我的用例是这样的,我在 WORDLIST“MonthNames.txt”中有一个匹配词列表。

现在我想在给定文档中标记这些单词的所有出现,而不考虑文本大小写。

PACKAGE uima.ruta.example;

WORDLIST MonthNameList = 'MonthNames.txt';
DECLARE MonthNames;
DECLARE MonthNameValue;


// Regex to be used in finding dates
STRING monthNameValueRegex = "(?i)(january|february|march|april|may|june|july|august|september|october|november|december|jan|feb|mar|apr|jun|jul|aug|sept|oct|nov|dec)";


// Mark month name


Document{-> MARKFAST(MonthNames, MonthNameList)};

Document{CONTAINS(MonthNames) -> MARK(MonthNameValue)};


 Document{REGEXP(monthNameValueRegex) -> MARK(MonthNameValue)};

有什么办法吗?

我试过了

Document{-> MARKFAST(MonthNames, MonthNameList,true)};

但这只是忽略空格而不是文本大小写。

请帮忙

【问题讨论】:

  • 文档说“第三个参数是可选的。它定义了 MARKFAST 操作是否应该忽略大小写,其默认值为 false。”
  • 如果您使用正常的过滤设置,默认情况下应该忽略空格。 MARKFAST 的论点应该可以解决问题。如果没有,那么可能还有另一个问题。然后,您可以发布更多信息,例如可重现的示例。
  • 普通正则表达式可以这样使用:"(?i)(january|february)" -> MonthNameValue;您示例中的最后两条规则不会像您预期的那样起作用,因为它们会尝试使用一个注释来注释完整的文档。
  • 我打算忽略文本大小写。如果“MonthNames.txt”包含一月条目,我想标记“JANUARY”、“January”、“JaNuArY”等。
  • 为此目的维护 RegEx 也相当麻烦。请提出建议。

标签: uima ignore-case ruta


【解决方案1】:

将第三个变量作为 true 传递会忽略单词大小写。

文档{-> MARKFAST(MonthNames, MonthNameList,true)};

感谢彼得的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多