Слово несоответствия Уима Рута
Имитация HyphenizationWord Как в автономном режиме,New-list,VBSE-in..etc с помощью
(SW|CW|CAP) HYPHEN (SW|CW|CAP) HYPHEN (SW|CW|CAP) {-PARTOF(HyphenizationWord) ->MARK(ThreeHyphenizationWord,1,5)};
(SW|CW|CAP) HYPHEN (SW|CW|CAP) {-PARTOF(HyphenizationWord),-PARTOF(ThreeHyphenizationWord) ->MARK(HyphenizationWord,1,3),MARK(PreHyphenizationWords,1),MARK(PosHyphenixationWords,3)};
И я всегда хочу помечать слова, как офлайн, Новый список.. и т. Д. Но мой сценарий неправильно содержит некоторые слова LIke..off в строке VBSE.
DECLARE ComplexPreWord,ComplexPostWord;
//BLOCK (foreach) HyphenizationWord{}
//{
STRING PreWord;
STRINGLIST PreWordList;
PreHyphenizationWords{- >MATCHEDTEXT(PreWord),ADD(PreWordList,PreWord)};
W {INLIST(PreWordList)->ComplexPreWord};
STRING PostWord;
STRINGLIST PostWordList;
PosHyphenixationWords{- >MATCHEDTEXT(PostWord),ADD(PostWordList,PostWord)};
W {INLIST(PostWordList)->ComplexPostWord};
//}
ComplexPreWord ComplexPostWord{->MARK(ComplexWord,1,2)};
Есть какой-либо способ исправить мою проблему..
1 ответ
Решение
Я не знаю, правильно ли я понял ваш вопрос, но, возможно, это то, что вы хотите:
DECLARE Hyphen;
SPECIAL.ct == "-"{-> Hyphen};
DECLARE HyphenizationWord, PreHyphenizationWords, PosHyphenixationWords;
DECLARE HyphenizationWord ThreeHyphenizationWord;
(W @Hyphen{-PARTOF(HyphenizationWord)} W Hyphen W){-> ThreeHyphenizationWord};
(W{-> PreHyphenizationWords} @Hyphen{-PARTOF(HyphenizationWord)} W{-> PosHyphenixationWords}){-> HyphenizationWord};
STRINGLIST hyphenizationWordList;
STRING mt;
HyphenizationWord{-> MATCHEDTEXT(mt), ADD(hyphenizationWordList, replaceAll(mt, "[- ]", ""))};
DECLARE ComplexWord;
MARKFAST(ComplexWord,hyphenizationWordList);
Сценарий начинается с ваших правил (переписан). Затем закрытый текст аннотации HyphenizationWord сохраняется в списке, но тире и пробелы удаляются заранее. Затем этот список просто используется при поиске в словаре с помощью MARKFAST.
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я разработчик UIMA Ruta