在String中查找电子邮件

Fel*_*lix 8 java regex

我试图从字符串中获取电子邮件,如:

"*** test@gmail.com&&^ test2@gmail.com((& ";

private static Pattern p = Pattern.compile("(^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$)");
Run Code Online (Sandbox Code Playgroud)

上面的代码可以收到一封电子邮件.

我怎么能得到所有?

Evg*_*eev 33

尝试

    String s = "*** test@gmail.com&&^ test2@gmail.com((& ";
    Matcher m = Pattern.compile("[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+").matcher(s);
    while (m.find()) {
        System.out.println(m.group());
    }
Run Code Online (Sandbox Code Playgroud)

  • 此链接的解决方案非常完美,https://handyopinion.com/utility-method-to-get-all-email-addresses-from-a-string-in-java/ (2认同)