验证7位数字的电话号码

艾伦

我要完成的工作如下:向用户询问数字,并检查用户输入提供的数字是否为7位整数。如果是字符串,则抛出InputMismatchException并再次询问数字。除了使用正则表达式并提供数字1234567之外,还有其他简便的方法吗?另一个问题是,如果我输入一个值,例如12345678,则由于int会四舍五入,因此如何避免这种情况。

int number = 0;
try {
    number = scan.nextInt();    // Phone Number is 7 digits long - excludes area code
} catch(InputMismatchException e) {
    System.out.println("Invalid Input.");
    number = validateNumber(number, scan);
} finally {
    scan.nextLine();    // consumes "\n" character in buffer
}

// Method checks to see if the phone number provided is 7 digits long
// Precondition: the number provided is a positive integer
// Postcondition: returns a 7 digit positive integer
public static int validateNumber(int phoneNumber, Scanner scan) {
     int number = phoneNumber;
     // edited while((String.valueOf(number)).length() != 7) to account for only positive values
     // Continue to ask for 7 digit number until a positive 7 digit number is provided
     while(number < 1000000 || number > 9999999) {
        try {
            System.out.print("Number must be 7 digits long. Please provide the number again: ");
            number = scan.nextInt();    // reads next integer provided
        } catch(InputMismatchException e) { // outputs error message if value provided is not an integer
            System.out.println("Incorrect input type.");
        } finally {
            scan.nextLine();    // consumes "\n" character in buffer
        }
     }
     return number;
}
wi

有效的电话号码不一定是整数(例如,包含+国家代码符号)。因此,请使用字符串代替。

基本正则表达式(7位数字,不验证国家/地区代码等)的简单示例:

public class Test {
    public static void main(String[] args) {
        Scanner stdin = new Scanner(System.in);


        String telephoneNumber = stdin.nextLine();

        System.out.println(Pattern.matches("[0-9]{7}", telephoneNumber));


    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用连字符验证13位数字的电话号码?

来自分类Dev

电话号码验证。只允许 0 作为第一位数字

来自分类Dev

iOS 7-2位数字的电话号码不起作用

来自分类Dev

使用可选的+88或01开头的11位数字验证孟加拉国的电话号码

来自分类Dev

修改电话号码清理正则表达式以处理前1位数字

来自分类Dev

正则表达式以匹配电话号码的前6位数字

来自分类Dev

电话号码的正则表达式为10位数字,并允许使用“-”(JavaScript)

来自分类Dev

正则表达式以匹配电话号码的前6位数字

来自分类Dev

将电话号码的第一位数字修剪为国际格式

来自分类Dev

联络表格7电话号码验证

来自分类Dev

是否可以使用asp:RegularExpressionValidator验证至少10位数字的电话号码并允许在空格之间使用空格,但不能计数

来自分类Dev

电话号码验证

来自分类Dev

电话号码验证

来自分类Dev

如何验证 8 到 10 位长的电话号码?

来自分类Dev

jQuery验证电话号码

来自分类Dev

电话号码验证MVC

来自分类Dev

电话号码的HTML验证

来自分类Dev

如何验证电话号码

来自分类Dev

如何验证电话号码?

来自分类Dev

电话号码验证问题

来自分类Dev

电话号码的HTML验证

来自分类Dev

损坏的电话号码验证

来自分类Dev

8位数电话号码的正则表达式(新加坡号码长度)

来自分类Dev

正则表达式在仅应显示10位数字的情况下将电话号码显示为有效的9位和10位数字

来自分类Dev

通过电话号码搜索联系人,并使用3位数前缀过滤

来自分类Dev

如何解决此价格,电话号码,2位数字的计算脚本并添加成本文本框?

来自分类Dev

电话号码的Java正则表达式-必须仅包含8位数字,且不超过2个破折号

来自分类Dev

连续查找 10 位数字,将它们格式化为电话号码 ASP.NET

来自分类Dev

使用Symfony验证电话号码

Related 相关文章

  1. 1

    如何使用连字符验证13位数字的电话号码?

  2. 2

    电话号码验证。只允许 0 作为第一位数字

  3. 3

    iOS 7-2位数字的电话号码不起作用

  4. 4

    使用可选的+88或01开头的11位数字验证孟加拉国的电话号码

  5. 5

    修改电话号码清理正则表达式以处理前1位数字

  6. 6

    正则表达式以匹配电话号码的前6位数字

  7. 7

    电话号码的正则表达式为10位数字,并允许使用“-”(JavaScript)

  8. 8

    正则表达式以匹配电话号码的前6位数字

  9. 9

    将电话号码的第一位数字修剪为国际格式

  10. 10

    联络表格7电话号码验证

  11. 11

    是否可以使用asp:RegularExpressionValidator验证至少10位数字的电话号码并允许在空格之间使用空格,但不能计数

  12. 12

    电话号码验证

  13. 13

    电话号码验证

  14. 14

    如何验证 8 到 10 位长的电话号码?

  15. 15

    jQuery验证电话号码

  16. 16

    电话号码验证MVC

  17. 17

    电话号码的HTML验证

  18. 18

    如何验证电话号码

  19. 19

    如何验证电话号码?

  20. 20

    电话号码验证问题

  21. 21

    电话号码的HTML验证

  22. 22

    损坏的电话号码验证

  23. 23

    8位数电话号码的正则表达式(新加坡号码长度)

  24. 24

    正则表达式在仅应显示10位数字的情况下将电话号码显示为有效的9位和10位数字

  25. 25

    通过电话号码搜索联系人,并使用3位数前缀过滤

  26. 26

    如何解决此价格,电话号码,2位数字的计算脚本并添加成本文本框?

  27. 27

    电话号码的Java正则表达式-必须仅包含8位数字,且不超过2个破折号

  28. 28

    连续查找 10 位数字,将它们格式化为电话号码 ASP.NET

  29. 29

    使用Symfony验证电话号码

热门标签

归档