Java で文字列をスペースで分割する

Mohammad Irfan 2023年10月12日
  1. Java の split() メソッドを使用して文字列を分割する
  2. Java の split() および trim() メソッドを使用して文字列を分割する
  3. Java の split() メソッドを使用して文字列を分割する
  4. Java の StringTokenizer クラスを使用して文字列を分割する
  5. Java で split() および compile() メソッドを使用して文字列を分割する
  6. Java の split() メソッドを使用して文字列を分割する
Java で文字列をスペースで分割する

このチュートリアルでは、Java で文字列をスペースで分割する方法を紹介します。

Java で文字列を分割する方法はいくつかあります。たとえば、String クラスの split() メソッド、StringUtils クラスの split() メソッド、StringTokenizer クラス、Patterncompile() メソッドなど、いくつかの方法があります。

Java の split() メソッドを使用して文字列を分割する

Java には、指定された文字に基づいて文字列を分割するメソッド split() が用意されています。これは String クラスのメソッドであり、文字列を吐いた後に文字列の配列を返します。インデックス値を使用して、配列から各文字列にさらにアクセスできます。

split() メソッドで正規表現を使用して、文字列を空白で分割します。以下の例を参照してください。

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "Hello This is DelfStack";
    String[] newStr = str.split("\\s+");
    for (int i = 0; i < newStr.length; i++) {
      System.out.println(newStr[i]);
    }
  }
}

出力:

Hello
This
is
DelfStack

Java の split() および trim() メソッドを使用して文字列を分割する

文字列の先頭に空白が含まれている場合、空の最初のインデックスを含む配列が返されます。この問題を回避するには、String クラスの trim() メソッドを使用して文字列の先頭と末尾のスペースをすべて削除し、split() メソッドを適用してすべての結果の配列を取得します。ストリング。

配列を返すため、for ループを使用してすべての要素をインデックスごとにトラバースする必要があります。以下の例を参照してください。

public class SimpleTesting {
  public static void main(String[] args) {
    String str = " Hello This is DelfStack";
    str = str.trim();
    String[] newStr = str.split("\\s+");
    for (int i = 0; i < newStr.length; i++) {
      System.out.println(newStr[i]);
    }
  }
}

出力:

Hello
This
is
DelfStack

Java の split() メソッドを使用して文字列を分割する

Java の String クラスとは別に、Apache ライブラリに属する​​別のクラス StringUtils があります。したがって、Apache コモンズライブラリを使用している場合は、このクラスとその split() メソッドを使用して、文字列を空白で分割できます。

この split() メソッドは、引数として正規表現を取りません。分割する必要のある文字列引数が必要です。以下の例を参照してください。

import org.apache.commons.lang3.StringUtils;
public class SimpleTesting {
  public static void main(String[] args) {
    String str = "Hello This is DelfStack";
    String[] newStr = StringUtils.split(str);
    for (int i = 0; i < newStr.length; i++) {
      System.out.println(newStr[i]);
    }
  }
}

出力:

Hello
This
is
DelfStack

Java の StringTokenizer クラスを使用して文字列を分割する

StringTokenizer クラスを使用して、文字列を空白で分割できます。分割後、トークンを文字列として返します。以下の例を参照してください。

import java.util.StringTokenizer;
public class SimpleTesting {
  public static void main(String[] args) {
    String str = "Hello This is DelfStack";
    StringTokenizer tokens = new StringTokenizer(str, " ");
    String[] newStr = new String[tokens.countTokens()];
    int index = 0;
    while (tokens.hasMoreTokens()) {
      newStr[index] = tokens.nextToken();
      System.out.println(newStr[index]);
      index++;
    }
  }
}

出力:

Hello
This
is
DelfStack

Java で split() および compile() メソッドを使用して文字列を分割する

compile() メソッドは Pattern クラスに属し、split() メソッドを使用して分割文字列の配列を取得できます。compile() メソッドを使用して分割文字を指定します。以下の例を参照してください。

import java.util.regex.Pattern;
public class SimpleTesting {
  public static void main(String[] args) {
    String str = "Hello This is DelfStack";
    final Pattern space = Pattern.compile(" ");
    String[] newStr = space.split(str);
    for (int i = 0; i < newStr.length; i++) {
      System.out.println(newStr[i]);
    }
  }
}

出力:

Hello
This
is
DelfStack

Java の split() メソッドを使用して文字列を分割する

String クラスの split() メソッドを使用して、指定したインデックスで文字列を分割できます。たとえば、最初の 3つの空白だけを分割する場合は、この数値を 2 番目の引数としてメソッドに渡すだけです。以下の例を参照してください。

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "Hello This is DelfStack";
    String[] newStr = str.split(" ", 3);
    for (int i = 0; i < newStr.length; i++) {
      System.out.println(newStr[i]);
    }
  }
}

出力:

Hello
This
is DelfStack

関連記事 - Java String