文の境界の検索を処理する Java ライブラリを知っている人はいますか? 私は、言語が使用できるすべての文末記号を知っているスマートな StringTokenizer 実装になると考えています。
BreakIterator での私の経験は次のとおりです。
ここで例を使用すると、次の日本語があります。
今日はパソコンを買った。高性能のマックは早い!とても快適です。
アスキーでは、次のようになります。
\ufeff\u4eca\u65e5\u306f\u30d1\u30bd\u30b3\u30f3\u3092\u8cb7\u3063\u305f\u3002\u9ad8\u6027\u80fd\u306e\u30de\u30c3\u30af\u306f\u65e9\u3044\uff01\u3068\u3066\u3082\u5feb\u9069\u3067\u3059\u3002
私が変更したサンプルの部分は次のとおりです。
Locale currentLocale = new Locale ("ja","JP");
BreakIterator sentenceIterator =
BreakIterator.getSentenceInstance(currentLocale);
String someText = "今日はパソコンを買った。高性能のマックは早い!とても快適です。";
境界インデックスを見ると、次のように表示されます。
0|13|24|32
しかし、これらのインデックスは文末に対応していません。