gpt4 book ai didi

java - 如何在Java中实现正则表达式

转载 作者:行者123 更新时间:2023-12-02 11:39:22 25 4
gpt4 key购买 nike

我对必须用 Java 解决的问题有疑问。事情是:我的程序通过控制台接收两个参数,第一个是文件的路径,我必须将此文件加载到java程序中,它是一个.ini文件。第二个参数是一个代码,具有以下模式:XXX-XXXX 或 XXX-XXXX-XXXX,其中“X”是从 0 到 9 的数字。在第二个参数中,我的问题出现了:我必须使用包 java.util .regex 来实现此模式,我的意思是,我必须验证用户是否正确输入参数。我怎样才能做到这一点?我的代码中实现此功能的部分如下,提前致谢:

Pattern patron = Pattern.compile("^[0-9]{3,}"); //aqui va la regex que queremos poner
Matcher match = patron1.matcher(args[1]);


if(args.length < 2){ // el programa espera recibir dos argumentos

System.out.println("ERROR, número de argumentos inválido!");
System.exit(1); //termina el programa
} else if(args[0].endsWith("config.ini") == false){ //COMPLETAR la segunda condicion
System.out.println("ERROR, los argumentos no toman valores válidos");
System.exit(1);
}

最佳答案

你可以使用这样的东西:

if(args.length >= 2 && args[1] != null && args[1].matches("^\\d{3,}(\\-\\d{3,} ){1,2}$"))

^ 代表字符串的开头

\\d{3,} 重复 3 次或以上的数字

(\\-\\d{3,}) 由破折号和上面解释的结构组成的组

{1,2} 表示该组重复一到两次

$ 字符串结尾

关于java - 如何在Java中实现正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48691863/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com