このメソッドを使用して、Java で電子メールを検証しています。理解したい。この表現が何を除外し、何を含めるかを誰か説明できますか
String expression = [A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4};
以下は完全な方法です:
public static boolean isValid(String email)
{
//String expression = "^[\\w\\.-]+@([\\w\\-]+\\.)+[A-Z]{2,4}$";
String expression = "[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}";
//String expression = "^([0-9a-zA-Z]([-.\\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\\w]*[0-9a-zA-Z]\\.)+[a-zA-Z]{2,9})$";
CharSequence inputStr = email;
Pattern pattern = Pattern.compile(expression, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(inputStr);
if (matcher.matches())
{
return true;
}
else{
return false;
}
}