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

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

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表示+匹配一个或多个。

相关推荐
yuweiade22 分钟前
Spring Boot中使用Server-Sent Events (SSE) 实现实时数据推送教程
java·spring boot·后端
丈剑走天涯1 小时前
kubernetes java app 部署使用harbor私服 问题集合
java·容器·kubernetes
摇滚侠1 小时前
JAVA 项目教程《黑马商城-Redis 篇》,分布式架构项目,从开发到部署
java·redis·分布式
中年程序员一枚2 小时前
spring-cloud-starter-openfeign现实中的运行逻辑
java·spring boot·后端
子超兄2 小时前
线程池相关问题
java·开发语言
清水白石0082 小时前
Python 并发三剑客:多线程、多进程与协程的实战抉择
java·服务器·python
想搞艺术的程序员3 小时前
Java Survivor区学习笔记
java·笔记·学习·垃圾回收
毕设源码-赖学姐3 小时前
【开题答辩全过程】以 基于SSM在线考试系统的设计与实现为例,包含答辩的问题和答案
java
吾诺3 小时前
Java进阶,时间与日期,包装类,正则表达式
java·mysql·正则表达式
ole ' ola3 小时前
lambda表达式
java·前端·jvm