安卓判断是否是正确的手机号码
来源:互联网 发布:深圳鼎峰网络 编辑:程序博客网 时间:2024/04/28 08:23
首先我们需要自己创建一个类
import android.text.Editable;import android.text.TextWatcher;
import android.widget.EditText;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
public class PhoneFormatCheckUtils {
/**
* 大陆号码或香港号码均可
*/
public static boolean isPhoneLegal(String str)throws PatternSyntaxException {
return isChinaPhoneLegal(str) || isHKPhoneLegal(str);
}
/**
* 大陆手机号码11位数,匹配格式:前三位固定格式+后8位任意数
* 此方法中前三位格式有:
* 13+任意数
* 15+除4的任意数
* 18+除1和4的任意数
* 17+除9的任意数
* 147
*/
public static boolean isChinaPhoneLegal(String str) throws PatternSyntaxException {
String regExp = "^((13[0-9])|(15[^4])|(18[0,2,3,5-9])|(17[0-8])|(147))\\d{8}$";
Pattern p = Pattern.compile(regExp);
Matcher m = p.matcher(str);
return m.matches();
}
/**
* 香港手机号码8位数,5|6|8|9开头+7位任意数
*/
public static boolean isHKPhoneLegal(String str)throws PatternSyntaxException {
String regExp = "^(5|6|8|9)\\d{7}$";
Pattern p = Pattern.compile(regExp);
Matcher m = p.matcher(str);
return m.matches();
}
public static void setPricePoint(final EditText editText, final int money) {
editText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
if (s.toString().contains(".")) {
if (s.length() - 1 - s.toString().indexOf(".") > 2) {
s = s.toString().subSequence(0,
s.toString().indexOf(".") + 3);
editText.setText(s);
editText.setSelection(s.length());
}
}
if (s.toString().trim().substring(0).equals(".")) {
s = "0" + s;
editText.setText(s);
editText.setSelection(2);
}
if (s.toString().startsWith("0") && s.toString().trim().length() > 1) {
if (!s.toString().substring(1, 2).equals(".")) {
editText.setText(s.subSequence(0, 1));
editText.setSelection(1);
return;
}
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void afterTextChanged(Editable s) {
if (s.toString().trim().equals("")==false){
if(Double.valueOf(s.toString().trim())>money){
editText.setText(money+"");
}
}
}
});
}
}
然后在想要判断号码的activity中调用以下代码:
PhoneFormatCheckUtils.isPhoneLegal(【你的edittext的id】.getText().toString());
1 0
- 安卓判断是否是正确的手机号码
- 判断手机号码是否是正确的手机号码
- 判断手机号码是否正确
- 判断是否是手机号码
- iosiOS判断手机号码是否正确
- 判断字符串是否是有效的手机号码
- 判断是否是手机号码的方法
- 判断是否是手机号码和手机号码的正则表达式
- 判断手机号码的正确
- JS判断是否是手机号码
- 正则表达式判断手机号码是否正确
- 如何判断手机号码格式是否正确
- 判断手机号码格式、身份证号码格式是否正确
- 判断是否是正确的EMAIL格式
- 判断是否是正确的EMAIL格式
- 判断是否是正确的EMAIL格式
- 判断是否是正确的身份证号码
- 判断邮编是否是正确的
- 文件上传到D盘
- Binary Tree Tilt问题及解法
- powerdesigner连接数据库 导出数据 生成PDM文件
- ALSA(高级Linux声音架构):一 简单例子
- 网络基础之网桥和交换机的工作原理及区别
- 安卓判断是否是正确的手机号码
- IOS动态修改导航栏颜色 UINavigationBar
- 子线程向主线程传值,主线程向子线程传值
- PAT1061 判断题
- 一元二次方程1161
- 人物照变成素描照
- NSSet
- 图解禁用WannaCry病毒利用的445端口(方法二)
- POJ 1160 Post Office 笔记