向ICU BreakIterator添加规则

时间:2019-07-05 07:39:04

标签: c++ icu breakiterator

我正在使用BreakIterator将一个句子分成几个单词。这是我的创建方式:

std::unique_ptr<BreakIterator> word_break_iterator;

// "locale" and "status" are defined elsewhere
word_break_iterator.reset(BreakIterator::createWordInstance(locale, status));

这很好,但是我遇到的情况是句子中出现“ Something™”一词。迭代器将其分为“ Something ”和“ ”。

我不希望它那样做。

我发现了有关break rules的信息,这似乎符合我的用例:

  

规则最常见的是描述应保持在一起且完整的文本范围。

我认为我需要将[\p{Letter}]+™;规则添加到我的迭代器中。但是,在阅读BreakIteratorhttp://icu-project.org/apiref/icu4c/classicu_1_1BreakIterator.html)上的API文档之后,我无法理解该怎么做。

如何将此自定义规则添加到我的BreakIterator

0 个答案:

没有答案