gpt4 book ai didi

java - 用于验证 : Firstname LastName(e. g Ben Smith 的正则表达式

转载 作者:行者123 更新时间:2023-12-01 21:59:06 24 4
gpt4 key购买 nike

String getname(){

Scanner input = new Scanner(System.in);
String name;
System.out.println("Enter your name:");
name= input.next();

String name_pattern = "^[A-Za-z]+(\\s[A-Za-z]+)$";//this regex isnt validating Ben Smith
Pattern pattern = Pattern.compile(name_pattern);
Matcher regexmatcher = pattern.matcher(name);

if(!regexmatcher.matches()){
System.out.println("Name format not correct");
}

return name;

}

我还需要一次又一次地输入,直到输入正确的格式。我怎么做?当我输入“Ben Smith”时,我当前的正则表达式会打印“名称格式不正确”,但它不应该打印它,因为 Ben Smith 是有效的输入!

最佳答案

input.next 返回输入中的下一个标记,而不是下一行。您可以在 Scanner 中设置另一个分隔符来返回行,但最自定义的方法是使用

name= input.nextLine();

关于java - 用于验证 : Firstname LastName(e. g Ben Smith 的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33914507/

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