Java正则抓取Email

Posted 张柯宇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java正则抓取Email相关的知识,希望对你有一定的参考价值。

实现思路:

1.使用Java.net.URL对象,绑定网络上某一个网页的地址

2.通过java.net.URL对象的openConnection()方法获得一个HttpConnection对象

3.通过HttpConnection对象的getInputStream()方法获得该网络文件的输入流对象InputStream

4.循环读取流中的每一行数据,并由Pattern对象编译的正则表达式区配每一行字符,取得email地址

关键代码:

 

技术分享
技术分享
package cn.bdqn;

import java.io.BufferedReader;
import java.io.InputStreamReader;

import java.net.URL;
import java.net.URLConnection;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test {
    public static void main(String[] args) throws Exception {
        //创建一个url对象
        URL url=new URL("");
        
        //打开连接
        URLConnection conn=url.openConnection();
        
        //设置连接网络超时时间 单位为毫秒
        conn.setConnectTimeout(1000*10);
        
        //通过流操作读取指定网络地址中的文件
        BufferedReader bufr=new BufferedReader(new InputStreamReader(conn.getInputStream()));
        String line=null;
        
        //匹配email的正则
        String regex="[a-zA-Z0-9_-][email protected]\\w+\\.[a-z]+(\\.[a-z]+)?";
        
        //使用模式的compile()方法生成模式对象
        Pattern p=Pattern.compile(regex);
        
        while((line=bufr.readLine())!=null){
            Matcher m=p.matcher(line);
            
            while(m.find()){
                System.out.println(m.group());
                
            }
            
        }         
    }

}

以上是关于Java正则抓取Email的主要内容,如果未能解决你的问题,请参考以下文章

java中使用 正则 抓取邮箱

java中使用 正则 抓取邮箱

java爬虫抓取指定数据

通过 Java 正则表达式提取 semver 版本字符串的片段

Python正则表达式抓取邮箱

用正则表达式抓取豆瓣数据