gpt4 book ai didi

java - 如何验证电话号码

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:37:47 28 4
gpt4 key购买 nike

我正在尝试在 java 中验证电话号码。在我的国家,电话号码要么以 9 开​​头,要么以 8 开头,而且只有 8 个数字。我已经做了

try {
Integer.parseInt(phoneNo);
}
catch (NumberFormatException e) {
msg += "Plese enter amount in Integers.\n";
}
if (phoneNo.length() == 0)
msg += "Please Enter Phone Number.\n";
if (phoneNo.length() != 8)
msg += "Invalid Phone Number.\n";

但是,当数字的第一位不是 9 或 8 时,我需要进行验证。我不完全确定我应该怎么做。请解释您的代码是如何工作的,因为我是一名学生并且正在努力学习。

最佳答案

以防万一您正在寻找正则表达式解决方案。

您可以使用以下模式 ^(?=(?:[8-9]){1})(?=[0-9]{8}).* 来执行支票。

本质上它的作用是;

  1. 从第一个字符位置 ^
  2. 向前看,看看第一个字符是 8 还是 9 (?=(?:[8-9]){1})
  3. 然后看是否一共有8位(?=[0-9]{8})
  4. 如果以上条件匹配,则将其标记为匹配 .*


public static void main(String[] args) {

String telephoneNr = "88765432";

if (telephoneNr.matches("^(?=(?:[8-9]){1})(?=[0-9]{8}).*")) {
System.out.println("Valid phone number!");
}
else {
System.out.println("Invalid!");
}
}

输出:

Valid phone number!

关于java - 如何验证电话号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38800027/

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