android 校验手机号码,检查Android中的有效手机号码

本文介绍了两种在Android中校验手机号码的方法。第一种是通过EditText获取并比较字符串前几位。第二种方法是使用谷歌的libphonenumber库,它可以解析、格式化、存储和验证国际电话号码,考虑了不同国家和地区的各种输入格式,更准确且易于使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法1:

获取一个实例EditText:

EditText myEdit = (EditText) findViewById(R.id.edittext1);

然后获得当前正在显示的字符串:

String phoneNumber = myEdit.getText().toString();

如果以匹配你想它唯一的初始数量,那么你可以比较如下:

String initialPart = phoneNumber.substring(0, 4);

//Get 1st three characters and then compare it with 639

boolean valid = initialPart.equals("639");

然后你就可以继续进行其他比较。但是这种方法很容易出错,你可能会错过一些特殊情况。因此,我建议去的方法2:

方法:2

但是彼此非常好的方法是使用谷歌的

It is for parsing, formatting, storing and validating international phone numbers. The Java version is optimized for running on smartphone.

我已经用它来验证电话号码。这是非常容易使用,你不需要照顾的角落案件。它考虑到您的国家/地区以及用户可能输入的各种格式。它会检查该数字是否对该区域有效。它还处理用户可能输入的所有可能的有效格式: "+xx(xx)xxxx-xxxx", "+x.xxx.xxx.xxx","+1(111)235-READ" ,"+1/234/567/8901", "+1-234-567-8901 x1234"(这里x是数字)。

这里是如何验证它样例用法:

PhoneNumber NumberProto = null;

String NumberStr = "639124463869"

PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();

try {

NumberProto = phoneUtil.parse(NumberStr, "CH");

} catch (NumberParseException e) {

System.err.println("NumberParseException was thrown: " + e.toString());

}

boolean isValid = phoneUtil.isValidNumber(NumberProto); // returns true or false

P.S:"CH"是瑞士的国家代码。您可以根据需要输入您的国家/地区代码。他们被给予here。希望能帮助到你。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值