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的主要内容,如果未能解决你的问题,请参考以下文章