gpt4 book ai didi

android - android中的电子邮件和电话号码验证

转载 作者:IT老高 更新时间:2023-10-28 21:47:18 24 4
gpt4 key购买 nike

我的申请中有一个注册表单,我正在尝试对其进行验证。我在验证电话号码和电子邮件字段时遇到了一些验证问题。

这是我的代码:

private boolean validate() {

String MobilePattern = "[0-9]{10}";
//String email1 = email.getText().toString().trim();
String emailPattern = "[a-zA-Z0-9._-]+@[a-z]+\\.+[a-z]+";

if (name.length() > 25) {

Toast.makeText(getApplicationContext(), "pls enter less the 25 character in user name", Toast.LENGTH_SHORT).show();
return true;

} else if (name.length() == 0 || number.length() == 0 || email.length() ==
0 || subject.length() == 0 || message.length() == 0) {

Toast.makeText(getApplicationContext(), "pls fill the empty fields", Toast.LENGTH_SHORT).show();
return false;

} else if (email.getText().toString().matches(emailPattern)) {

//Toast.makeText(getApplicationContext(),"valid email address",Toast.LENGTH_SHORT).show();
return true;

} else if(!email.getText().toString().matches(emailPattern)) {

Toast.makeText(getApplicationContext(),"Please Enter Valid Email Address",Toast.LENGTH_SHORT).show();
return false;

} else if(number.getText().toString().matches(MobilePattern)) {

Toast.makeText(getApplicationContext(), "phone number is valid", Toast.LENGTH_SHORT).show();
return true;

} else if(!number.getText().toString().matches(MobilePattern)) {

Toast.makeText(getApplicationContext(), "Please enter valid 10 digit phone number", Toast.LENGTH_SHORT).show();
return false;
}

return false;
}

我已使用上述代码进行验证。我面临的问题是电话号码和电子邮件验证,只有一个验证有效。例如,如果我注释掉电话号码验证,则电子邮件验证工作正常。如果我注释掉电子邮件验证,则电话号码验证正在工作。如果同时使用这两种验证,则无法正常工作。

最佳答案

用于电子邮件地址验证

private boolean isValidMail(String email) {

String EMAIL_STRING = "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"
+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";

return Pattern.compile(EMAIL_STRING).matcher(email).matches();

}

private boolean isValidMail(String email) {
return android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches();
}

用于移动验证

对于有效手机您需要考虑 7 位到 13 位,因为某些国家/地区有 7 位手机号码。如果您的主要目标是您自己的国家,那么您可以匹配长度。假设印度有 10 位数的手机号码。我们也不能检查手机号码是否必须以 9 或 8 或任何开头。

手机号我用了这两个功能:

private boolean isValidMobile(String phone) {
if(!Pattern.matches("[a-zA-Z]+", phone)) {
return phone.length() > 6 && phone.length() <= 13;
}
return false;
}

private boolean isValidMobile(String phone) {
return android.util.Patterns.PHONE.matcher(phone).matches();
}

关于android - android中的电子邮件和电话号码验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22505336/

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