欢迎访问宙启技术站
智能推送

Java函数:如何使用正则表达式来验证输入

发布时间:2023-06-18 10:20:35

在Java中,正则表达式可以用来验证输入是否符合特定的模式。以下是一个使用正则表达式验证输入的示例:

1. 导入java.util.regex包和java.util.Scanner包

import java.util.regex.*; 
import java.util.Scanner;

2. 创建一个Scanner对象,用于从控制台读取输入

Scanner input = new Scanner(System.in);

3. 定义一个正则表达式,比如要求输入必须是一个由数字组成的5位数,可以使用以下正则表达式:

String regex = "\\d{5}";

其中,\\d表示数字,{5}表示重复5次。

4. 使用Pattern和Matcher类对输入进行验证

String inputStr = input.nextLine();
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(inputStr);
if (matcher.matches()) {
    System.out.println("输入符合要求!");
} else {
    System.out.println("输入格式不正确,请重新输入!");
}

通过调用matches()方法来比较输入字符串和正则表达式是否匹配。

完整代码如下:

import java.util.regex.*;
import java.util.Scanner;
public class RegexExample {
    public static void main(String[] args) {
        // 创建Scanner对象
        Scanner input = new Scanner(System.in);
        // 定义正则表达式
        String regex = "\\d{5}";
        // 读取输入
        String inputStr = input.nextLine();
        // 比较输入和正则表达式是否匹配
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(inputStr);
        if (matcher.matches()) {
            System.out.println("输入符合要求!");
        } else {
            System.out.println("输入格式不正确,请重新输入!");
        }
    }
}

在运行该程序后,用户可以输入任意5位数,程序会自动判断输入是否符合要求。如果符合要求,程序会输出“输入符合要求!”;否则会输出“输入格式不正确,请重新输入!”。