Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用regex验证电子邮件地址_Java_Regex_Email - Fatal编程技术网

Java 使用regex验证电子邮件地址

Java 使用regex验证电子邮件地址,java,regex,email,Java,Regex,Email,我一直在使用这个正则表达式来验证电子邮件地址。在特定行中发现没有有效电子邮件地址的文件将被删除: FileInputStream fsdel = new FileInputStream("C:/Folder/" + filefinal[o]); BufferedReader brdel = new BufferedReader(new InputStreamReader(fsdel)); for (int j = 0; j <

我一直在使用这个正则表达式来验证电子邮件地址。在特定行中发现没有有效电子邮件地址的文件将被删除:

 FileInputStream fsdel = new FileInputStream("C:/Folder/" + filefinal[o]);
                BufferedReader brdel = new BufferedReader(new InputStreamReader(fsdel));
                for (int j = 0; j < 4; j++) {
                    brdel.readLine();
                }
                String email = brdel.readLine();
                String mine = email.trim();
                String lineIwant = mine.substring(0, 32).trim();
                // System.out.println("EMAIL ID: " + lineIwant);
                String emailreg = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";
                Boolean b = lineIwant.matches(emailreg);

                if (b.toString() == "false") {
                    System.out.println(filedel[o]);
                    fsdel.close();
                    //brdel.close();
                    filedel[o].delete();

                }

该文件已作为没有有效电子邮件地址的文件删除。有人能帮助我如何将上述电子邮件地址包含为有效的电子邮件地址吗?

为什么将电子邮件地址限制为32个字符?上面是34个字符,但您可以通过

String lineIwant = mine.substring(0, 32).trim();

另请参阅并讨论电子邮件地址regexps(它比您目前所做的要复杂得多,我会重新考虑您重新使用regexps的方法)

为什么您将电子邮件地址限制为32个字符?上面是34个字符,但您可以通过

String lineIwant = mine.substring(0, 32).trim();

另请参阅并讨论电子邮件地址regexps(它比您目前所做的要复杂得多,我会重新考虑您重新使用regexps的方法)

我相信您这是由于字符限制而发生的错误。始终为电子邮件地址保留至少50个字符。我的个人执业是100, 也可以考虑使用微软Visual Studio内置的正则表达式,它会使事情变得更容易。

这里有一个链接


我相信您这是由于字符限制而发生的错误。始终为电子邮件地址保留至少50个字符。我的个人执业是100, 也可以考虑使用微软Visual Studio内置的正则表达式,它会使事情变得更容易。

这里有一个链接