1. ホーム
  2. スクリプト・コラム
  3. その他

[解決済み】Javaで入力テキストから句読点を削除するにはどうすればいいですか?

2022-01-12 02:21:21

質問内容

ユーザーが入力した文章を小文字にし、句読点を削除する必要があるのですが、コードは以下の通りです。

    String[] words = instring.split("\\s+");
    for (int i = 0; i < words.length; i++) {
        words[i] = words[i].toLowerCase();
    }
    String[] wordsout = new String[50];
    Arrays.fill(wordsout,"");
    int e = 0;
    for (int i = 0; i < words.length; i++) {
        if (words[i] != "") {
            wordsout[e] = words[e];
            wordsout[e] = wordsout[e].replaceAll(" ", "");
            e++;
        }
    }
    return wordsout;

句読点を削除する方法が見つからない

どのように解決するのですか?

これはまず、文字以外の文字をすべて削除し、小文字に折り返してから入力を分割し、すべての作業を1行で行います。

String[] words = instring.replaceAll("[^a-zA-Z ]", "").toLowerCase().split("\\s+");

分割がうまくいくように、入力には最初スペースが残されています。

ゴミのような文字を削除することで 以前 を分割することで、要素間をループする必要がなくなります。