0
文字列を正規化して文字列配列に格納しようとしていますが、省略記号で接続された単語(例:Lorem...ipsum
)は正しく分割されません。結果の配列は[loremipsum, dolor, sit, amet]
です。Java APIを使用して楕円に接続されている単語を分割する方法
String teststr = "Lorem...ipsum dolor sit amet.";
String nstr = Normalizer.normalize(teststr, Normalizer.Form.NFD)
.toLowerCase().replaceAll("[^a-zα-ωA-ZΑ-Ω0-9 ]", "");
String[] words = nstr.split("\\s+");
System.out.println(Arrays.toString(words));
置換文字列の '' "を' '' ''に変更します。 – 4castle
@ 4castleそれは働いた!正規表現にはあまり慣れていない、それを動作させるために数時間試してきました、あなたの答えに感謝します。 –
'replaceAll()'と 'nstr.split(" [^ a-zα-ω0-9] + ")'を削除する方が簡単です(正規表現に大文字は必要ありません。小文字に変換されます)。 –