使用“@”进行Android电子邮件验证

时间:2016-03-18 11:28:07

标签: android android-studio

是否可以在我的代码中获得电子邮件验证:

EditText EmailAdresse = (EditText) findViewById(R.id.editTextEMailAdresse);
                        if (EmailAdresse.getText().toString().length() == 0)
                            EmailAdresse.setError("Bitte geben Sie Ihre Email Adresse ein");
                        if ((EmailAdresse.getText().toString().equals(""))) {

目前它与空场(Lenght == 0)一起工作,但我希望它适用于@符号。如果用户未在字段中键入任何内容,则显示请输入您的电子邮件地址。如果用户在字段中键入一个字母或符号,则可以发送电子邮件。我希望他必须在字段中键入“@”,然后他就可以发送邮件了。

3 个答案:

答案 0 :(得分:0)

您可以使用以下代码验证电子邮件地址,

 //Email Pattern    
  public final static Pattern EMAIL_ADDRESS_PATTERN = Pattern.compile("[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}" + ")+");

/**
 * Email validation
 * 
 * @param email
 * @return
 */
public static boolean checkEmail(String email) {
    return EMAIL_ADDRESS_PATTERN.matcher(email).matches();
}

答案 1 :(得分:0)

您可以在项目中使用此类来验证电子邮件。代码几乎是不言自明的。

package com.Alok.regex;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class EmailValidator {

    private Pattern pattern;
    private Matcher matcher;

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

    public EmailValidator() {
    pattern = Pattern.compile(EMAIL_PATTERN);
}

/**
 * Validate hex with regular expression
 * 
 * @param hex
 *            hex for validation
 * @return true valid hex, false invalid hex
 */
public boolean validate(final String hex) {

    matcher = pattern.matcher(hex);
    return matcher.matches();

     }
 }

答案 2 :(得分:-1)

您可以根据需要设置表达式

 public static boolean isEmailValid(String email) {
    boolean isValid = false;

    String expression = "^[\\w\\.-]+@([\\w\\-]+\\.)+[A-Z]{2,8}$";
    CharSequence inputStr = email;
    Pattern pattern = Pattern.compile(expression, Pattern.CASE_INSENSITIVE);
    Matcher matcher = pattern.matcher(inputStr);
    if (matcher.matches()) {
        isValid = true;
    }
    return isValid;

}