Javaで文字列が英数字のみで構成されているかを判定する方法


  1. 正規表現を使用する方法: Javaでは、正規表現を使って文字列が英数字のみで構成されているかを判定することができます。以下はその方法です。
public static boolean isAlphanumeric(String str) {
    return str.matches("[a-zA-Z0-9]+");
}
public static void main(String[] args) {
    String input = "Abc123";
    if (isAlphanumeric(input)) {
        System.out.println("入力文字列は英数字のみです");
    } else {
        System.out.println("入力文字列に英数字以外の文字が含まれています");
    }
}

上記の例では、isAlphanumericメソッドを使って入力文字列が英数字のみで構成されているかを判定しています。正規表現[a-zA-Z0-9]+は、文字列が1文字以上の英字または数字で構成されていることを表しています。

  1. 文字列の各文字をチェックする方法: もう一つの方法は、文字列の各文字をチェックして英数字であるかを判定する方法です。以下はその方法です。
public static boolean isAlphanumeric(String str) {
    for (char c : str.toCharArray()) {
        if (!Character.isLetterOrDigit(c)) {
            return false;
        }
    }
    return true;
}
public static void main(String[] args) {
    String input = "Abc123";
    if (isAlphanumeric(input)) {
        System.out.println("入力文字列は英数字のみです");
    } else {
        System.out.println("入力文字列に英数字以外の文字が含まれています");
    }
}

上記の例では、isAlphanumericメソッドが文字列の各文字をチェックして、英数字であるかを判定しています。Character.isLetterOrDigit(c)を使って文字が英字または数字かどうかを判定しています。