我想使用正则表达式检查电子邮件。我检查了([ - \ w。] + @ [ - \ w。] +。[_- \ w。])的电子邮件常规表达式。但“字符范围内可能没有使用字符类”错误发生。我该怎么做?
答案 0 :(得分:0)
尝试 此
String emailPattern = "[a-zA-Z0-9._-]+@[a-z]+\\.+[a-z._-a-zA-Z0-9]+";
答案 1 :(得分:0)
您需要检查匹配函数中的reqular表达式,如此
if(editText.getText().toString().matches("^[a-zA-Z0-9._%+-]+[@]{1}[a-zA-Z0-9.-]+[.]{1}[a-zA-Z]{2,6}$")){
//Valid email address
}else{
//Wrong email address
}
答案 2 :(得分:0)
static String emailExpression = "^[\\w\\.-]+@([\\w\\-]+\\.)+[A-Z]{2,20}$";
static Pattern emailPattern = Pattern.compile(emailExpression, Pattern.CASE_INSENSITIVE);
验证
if(emailValidation(editText.getText().toString()))
{
//Valid
}
else
{
// Invalid
}
函数调用验证
public static boolean emailValidation(String s)
{
if( s == null)
{
return false;
}
else
{
m = emailPattern.matcher(s);
return m.matches();
}
}