溫馨提示×

怎么用java正則表達式判斷是否是數(shù)字

小億
215
2024-02-02 11:30:34
欄目: 編程語言

可以使用Java的正則表達式來判斷一個字符串是否是數(shù)字。以下是一個示例代碼:

import java.util.regex.Pattern;

public class Main {
    public static void main(String[] args) {
        String str1 = "12345"; // 數(shù)字
        String str2 = "12.34"; // 小數(shù)
        String str3 = "abc123"; // 包含字母
        String str4 = "12a34"; // 包含非數(shù)字字符

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

    public static boolean isNumeric(String str) {
        Pattern pattern = Pattern.compile("-?\\d+(\\.\\d+)?"); // 數(shù)字的正則表達式
        return pattern.matcher(str).matches();
    }
}

上述代碼中,isNumeric方法接受一個字符串參數(shù),并使用正則表達式判斷該字符串是否是數(shù)字。正則表達式-?\d+(\.\d+)?表示一個可選的負號,后面跟著一位或多位數(shù)字,然后可選地跟著一個小數(shù)點和一位或多位數(shù)字。使用Pattern.compile方法創(chuàng)建一個正則表達式的模式,然后使用matcher方法將該模式應用到字符串上。最后,使用matches方法判斷字符串是否匹配模式,如果匹配返回true,否則返回false。

0