如何拆分日语文本?

How to split Japanese text?

使用 Java 拆分日语文本的最佳方法是什么? 例如,对于以下文本:

こんにちは。私の名前はオバマです。私はアメリカに行く。

我需要以下输出:

こんにちは
私の名前はオバマです
私はアメリカに行く

黑文字可以吗?

您可以使用 java.text.BreakIterator.

String TEXT = "こんにちは。私の名前はオバマです。私はアメリカに行く。";
BreakIterator boundary = BreakIterator.getSentenceInstance(Locale.JAPAN);
boundary.setText(TEXT);
int start = boundary.first();
for (int end = boundary.next();
     end != BreakIterator.DONE;
     start = end, end = boundary.next()) {
     System.out.println(TEXT.substring(start, end));
}

这个程序的输出是:

こんにちは。
私の名前はオバマです。
私はアメリカに行く。

您不能使用黑文字来查找日语句子边界。它可以将一个句子拆分成单词。