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

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

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

相关推荐
杯莫停丶12 分钟前
设计模式之:简单工厂模式
java·设计模式·简单工厂模式
Lucky_Turtle13 分钟前
【Java Xml】dom4j写入XML
xml·java·python
superlls16 分钟前
(定时任务)接上篇:定时任务的分布式执行与分布式锁使用场景
java·分布式·后端
无敌的牛22 分钟前
C++复习(1)
java·开发语言·面试
子沫202023 分钟前
springboot中server.main.web-application-type=reactive导致的拦截器不生效
java·spring boot·后端
Pluchon28 分钟前
硅基计划4.0 算法 二叉树深搜(DFS)
java·数据结构·算法·leetcode·深度优先·剪枝
9号达人1 小时前
if-else 优化的折中思考:不是消灭分支,而是控制风险
java·后端·面试
不知道累,只知道类1 小时前
Java 在AWS上使用SDK凭证获取顺序
java·aws
咖啡Beans2 小时前
SpringBoot2.7集成Swagger3.0
java·swagger
聪明的笨猪猪2 小时前
Java JVM “垃圾回收(GC)”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试