在Utils包名下面创建电话号码匹配工具类
public class TelNumMatch {
static String YD = "^[1]{1}(([3]{1}[4-9]{1})|([5]{1}[012789]{1})|([8]{1}[12378]{1})|([4]{1}[7]{1}))[0-9]{8}$";
static String LT = "^[1]{1}(([3]{1}[0-2]{1})|([5]{1}[56]{1})|([8]{1}[56]{1}))[0-9]{8}$";
static String DX = "^[1]{1}(([3]{1}[3]{1})|([5]{1}[3]{1})|([8]{1}[09]{1}))[0-9]{8}$";
String mobPhnNum;
public TelNumMatch(String mobPhnNum) {
this.mobPhnNum = mobPhnNum;
Log.d("tool", mobPhnNum);
}
public int matchNum() {
/**
* 28. * flag = 1 YD 2 LT 3 DX 29.
*/
int flag;
if (mobPhnNum.length() == 11) {
if (mobPhnNum.matches(YD)) {
flag = 1;
}
else if (mobPhnNum.matches(LT)) {
flag = 2;
}
else if (mobPhnNum.matches(DX)) {
flag = 3;
}
else {
flag = 4;
}
}
else {
flag = 5;
}
Log.d("TelNumMatch", "flag" + flag);
return flag;
}
public static boolean isValidPhoneNumber(String number)
{
boolean flag=false;
if(number.length()==11 && (number.matches(YD)||number.matches(LT)||number.matches(DX)))
{
flag=true;
}
return flag;
}
public static boolean isExistPhoneNumber(String number)
{
return false;
}
public static boolean isEmail(String email)
{
String patternString="^[\\w\\.-]+@([\\w\\-]+\\.)+[A-Z]{2,4}$";
return isMatcher(patternString,email);
}
public static boolean isMatchCharOrNumber(String str)
{
String patternString="^[\\d|a-z|A-Z]+$";
return isMatcher(patternString,str);
}
public static boolean isMatcher(String patternString,String str)
{
boolean isValid=false;
CharSequence inputStr =str ;
Pattern pattern =Pattern.compile(patternString,Pattern.CASE_INSENSITIVE);
Matcher matcher=pattern.matcher(inputStr);
if(matcher.matches())
{
isValid =true;
}
return isValid;
}
}
2.在代码中判断输入的电话号码是否为有效的电话号码
// 手机号码的有效性验证֤
String userPhoneNumber = mEditPhoneNumber.getText().toString()
if (!TelNumMatch.isValidPhoneNumber(userPhoneNumber)) {
Toast.makeText(LonginActivity.this, "请输入正确的手机号码",Toast.LENGTH_SHORT).show()
}