Java正規表現で数値を判定する方法

文字列が数字かどうかは正規表現で判定できます。以下は正規表現で数字を判定するサンプルコードです。

import java.util.regex.Pattern;

public class Main {
    public static void main(String[] args) {
        String str1 = "12345";
        String str2 = "12.345";
        String str3 = "-123";
        String str4 = "abc123";

        System.out.println(isNumeric(str1)); // 输出: true
        System.out.println(isNumeric(str2)); // 输出: true
        System.out.println(isNumeric(str3)); // 输出: true
        System.out.println(isNumeric(str4)); // 输出: false
    }

    public static boolean isNumeric(String str) {
        Pattern pattern = Pattern.compile("-?\\d+(\\.\\d+)?");
        return pattern.matcher(str).matches();
    }
}

上述コード内では、isNumeric関数は正規表現`-?\\d+(\\.\\d+)?`を用いて文字列が数値であるかどうかを判断しています。この正規表現の意味は、負符号が任意、その後に数字が1つ以上(整数部)、続いて小数部分が任意で、小数点と数字が1つ以上を組み合わせたものです。

pattern.matcher(str).matches()メソッドを呼び出して、文字列が正規表現と一致するかどうかを判定し、一致した場合はtrue、一致しない場合はfalseを返します。

bannerAds