使用正则表达式来判断一个字符串只是否包含数字

使用正则表达式来判断一个字符串只是否包含数字

1、第一种

java 复制代码
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、第二种

java 复制代码
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表示+匹配一个或多个。

相关推荐
心之语歌1 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊2 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang2 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Ray Liang4 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解4 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
SimonKing8 小时前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean8 小时前
Jackson View Extension Spring Boot Starter
java·后端
Seven979 小时前
剑指offer-79、最⻓不含重复字符的⼦字符串
java
皮皮林55119 小时前
Java性能调优黑科技!1行代码实现毫秒级耗时追踪,效率飙升300%!
java
冰_河19 小时前
QPS从300到3100:我靠一行代码让接口性能暴涨10倍,系统性能原地起飞!!
java·后端·性能优化