Android,从edittext获取文本

时间:2014-10-23 11:02:26

标签: java android regex

我正在学习在Android中编程,我有一个问题。 我有一个带TextView,Button和EditText的应用程序,我希望我的应用程序: 我打开它,在edittext中输入内容,当我按下按钮时,我想检查edittext中的文本,如果它是有效的电子邮件(使用正则表达式)并在textview中相应地显示消息。

1 个答案:

答案 0 :(得分:1)

您也可以在没有RegEx的情况下进行检查!您可以将String的每个字符放入一个字符数组中。在那里你可以检查是否有点,@等等......

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,})$";

这是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);
}

public static void main(String[] args) {
    EmailValidator em = new EmailValidator();
    boolean y  = em.validate("sakulreld@aol.com");
    System.out.println(y);
}



/**
 * 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();

}

}