Для регистрации пользователя я хочу, чтобы он мог использовать адрес электронной почты студента, заканчивающийся на .a c .uk, но попробовал несколько строк emailCharacter, но продолжает возвращать неверный адрес электронной почты.
private Boolean validateEmail() {
String entry = regEmail.getEditText().getText().toString();
//Characters accepted for email address
String emailCharacters = "[a-zA-Z0-9+._%-+]{1,256}" +
"@" +
"[a-zA-Z0-9][a-zA-Z0-9-]{0,64}" +
"(" +
"." +
"[a-zA-Z0-9][a-zA-Z0-9-]{0,25}" +
")+";
// "[a-zA-Z0-9._-]+@[a-z]+\\.+[a-z]";
//If empty display error
if (entry.isEmpty()) {
regEmail.setError("Email field cannot be empty");
return false;
//If email address does not follow constraints
} else if (!entry.matches(emailCharacters)) {
regEmail.setError("Invalid email address");
return false;
ОБНОВЛЕНИЕ:
//Validation for email
private Boolean validateEmail() {
String entry = regEmail.getEditText().getText().toString();
//Characters accepted for email address
String emailCharacters = "[a-zA-Z0-9+._%-+]{1,256}" +
"@" +
"[a-zA-Z0-9][a-zA-Z0-9-]{0,64}" +
"(" +
"." +
"[a-zA-Z0-9]{0,25}" +
"."+
"[a-zA-Z0-9]{0,25}" + // add these item more in your regex
")+";