使用正則表達式來判斷一個字符串只是否包含數字
1、第一種
import java.util.regex.Pattern;public class Main {public static void main(String[] args) {String inputString = "12345";if (containsOnlyDigits(inputString)) {System.out.println("字符串只包含數字。");} else {System.out.println("字符串包含其他字符。");}}private static boolean containsOnlyDigits(String str) {// 使用正則表達式匹配字符串中是否都是數字String regex = "\\d+";return Pattern.matches(regex, str);}
}
在這個例子中,containsOnlyDigits
方法使用了正則表達式"\\d+"
,該正則表達式必須要求字符串中的每個字符都是數字。如果字符串符合這個模式,方法返回true
,否則返回false
。
如果您希望字符串可以為空(不包含數字),可以將正則表達式修改為"\\d*"
,其中*
表示零個或多個。
2、第二種
import java.util.regex.Pattern;public class Main {public static void main(String[] args) {String inputString = "12345";if (containsOnlyDigits(inputString)) {System.out.println("字符串只包含數字。");} else {System.out.println("字符串包含其他字符。");}}private static boolean containsOnlyDigits(String str) {// 使用正則表達式匹配數字String regex = "^[0-9]+$";return Pattern.matches(regex, str);}
}
在這個例子中,containsOnlyDigits
方法使用了正則表達式"^[0-9]+$"
,該正則表達式表示字符串應該以數字并且只包含數字。如果字符串滿足這個模式,方法返回true
,否則返回false
。
你可以根據實際需要修改正則表達式。如果你希望字符串中可以包含一個或多個數字,可以將正則表達式為。這里,表示一個數字字符,"\\d+"
而\\d
表示+
匹配一個或多個。