[英]Email address validation on KeyReleased event in java
I'm having a java form where user has to insert his/her email address. 我有一个Java表单,用户必须在其中插入他/她的电子邮件地址。 And I want to validate that email address on keyreleased event.
我想在keyreleased事件中验证该电子邮件地址。 If the format is wrong then a message should be displayed saying the format is wrong and if the address is ok another message should be displayed saying format is correct.
如果格式错误,则应显示一条消息,说明格式错误;如果地址正确,则应显示另一条消息,说明格式正确。
This is the code of emailvalidator class file, I wrote to validate my email address. 这是我编写以验证我的电子邮件地址的emailvalidator类文件的代码。
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 boolean validate(final String hex) {
matcher = pattern.matcher(hex);
return matcher.matches();
}
}
Now I want to use this to validate my email address field which is on userForum.java. 现在,我想用它来验证我在userForum.java上的电子邮件地址字段。 And how can I use above validation class to validate my Email address on keyreleased event ?
以及如何使用上述验证类在keyreleased事件中验证我的电子邮件地址?
(my textfield name is txt_email and message going to display on lbl_msg label.) (我的文本字段名称是txt_email,消息将显示在lbl_msg标签上。)
Use a DocumentListener on the underlying document as described here: 如下所述在基础文档上使用DocumentListener:
Value Change Listener to JTextField 值更改侦听器到JTextField
Using a KeyListener instead means that if a user pastes in the email address, it won't be validated. 相反,使用KeyListener意味着如果用户粘贴了电子邮件地址,则不会对其进行验证。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.