「java验证邮箱的有效」java邮箱验证码

博主:adminadmin 2023-03-21 19:18:08 690

今天给各位分享java验证邮箱的有效的知识,其中也会对java邮箱验证码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

以下是我编写的JAVA验证邮箱可用性的代码

for(int i=1;i=a.length();i++)

{

d=a.substring(i-1,i);

if(d.equals("@."))

{

return false;

}

}

这个循环判定完是有@.返回false不对的,用判定"@."是否存在好一些

if(!a.contains("@."))

{

return false;

}

java :从控制台输入一个字符串,验证是不是邮箱?

自定了一个合法邮箱规则,希望能帮助理解。代码如下:import java.util.Scanner;public class Test {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入一个邮箱地址:");String mail = sc.nextLine();/*   设定邮箱地址的合法规则,合法邮箱地址要求如下:                   (1)字符必须是英文或数字开始                   (2)必须包含一个@                                 (3)@符号在. 符号前面                   (4)以英文或数字结尾 */                                  //设置一个正则表达式 String reg = "[\\w]+@[\\w]+.[\\w]+"; //告知此字符串是否匹配给定的正则表达式。if(mail.matches(reg)) {System.out.println("邮箱地址合法!");}else {System.out.println("邮箱地址不合法!");}}}这里主要是采用正则表达式的方式。

关于正则表达式,查看Pattern类和Matcher类。楼主可以可以到网上查看下相关资料。解释下上面的正则表达式String reg = "[\\w]+@[\\w]+.[\\w]+";\w  表示单词字符:[a-zA-Z_0-9],上面是两个反斜杆是因为反斜杆是转义字符  +号表示:出现一次或多次 ,所以[\\w]+意思就是一到多个单词字符(英文或数字)@ :直接表示@字符.:表示点字符综上所述。String reg = "[\\w]+@[\\w]+.[\\w]+";的意思就是 :一到多个字符 + @ + 一到多个字符 + 点 + 一到多个字符。正则表达式使用的好。

合法E-mail地址:  1. 必须包含一个并且只有一个符号“@”  2. 第一个字符不得是“@”或者“.”  3. 不允许出现“@.”或者.@  4. 结尾不得是字符“@”或者“.”  5. 允许“@”前的字符中出现“+”  6. 不允许“+”在最前面,或者“+@”

java 验证邮箱是否存在

一般的验证是 验证邮件地址格式是否正确,如果你需要验证邮箱是否存在就需要发个邮件过去,即使发过去 你也不知道是否存在,除非有邮件返回。

所以一般只是验证邮件格式是否正确就可以了。

如何用java检验电子邮箱格式的合法性?要用到String的方法来判断

自己写逻辑验证的方式可以做到。我写了下面的:

public static boolean validateEmail(String email) {

boolean flag = false;

int pos = email.indexOf("@");

if (pos == -1 || pos == 0 || pos == email.length() - 1) {

return false;

}

String[] strings = email.split("@");

if (strings.length != 2) {// 如果邮箱不是xxx@xxx格式

return false;

}

CharSequence cs = strings[0];

for (int i = 0; i cs.length(); i++) {

char c = cs.charAt(i);

if (!Character.isLetter(c) !Character.isDigit(c)) {

return false;

}

}

pos = strings[1].indexOf(".");// 如果@后面没有.,则是错误的邮箱。

if (pos == -1 || pos == 0 || pos == email.length() - 1) {

return false;

}

strings = strings[1].split(".");

for (int j = 0; j strings.length; j++) {

cs = strings[j];

if (cs.length() == 0) {

return false;

}

for (int i = 0; i cs.length(); i++) {//如果保护不规则的字符,表示错误

char c = cs.charAt(i);

if (!Character.isLetter(c) !Character.isDigit(c)) {

return false;

}

}

}

return true;

}

这个效率也不会差很多,不过我推荐matches方法,经过测试的,matches匹配方式运行10000次的时间比上面的时间少了20毫秒。

java验证邮箱的有效的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java邮箱验证码、java验证邮箱的有效的信息别忘了在本站进行查找喔。