java小程序:抓取网页中的Email地址,去重,打印。
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class test2 {
public static void main(String[] args) {
try {
BufferedReader br=new BufferedReader(new FileReader("D:\\TDDOWNLOAD\\showtopic-54449.html"));
String line="";
while((line=br.readLine())!=null){
pr(line);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void pr(String aa) {
Pattern pattern=Pattern.compile("[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+");
Matcher matcher=pattern.matcher(aa);
Map<String, String> emailMap=new HashMap<String, String>();
while (matcher.find()) {
emailMap.put(matcher.group(), matcher.group());
}
Iterator<String> iterator=emailMap.values().iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
}
}
分享到:
相关推荐
监控服务器CPU使用率,内存(MEM)使用率,硬盘剩余,网络连接状态,开启线程数量,是否开启某进程或某APP;...主要用了pslist获取进程信息,sigar获取cpu,网络信息,disc使用情况。。。有托盘功能。。。。
firstApplet.java 第一个用Java开发的Applet小程序。 firstApplet.htm 用来装载Applet的网页文件 第2章 示例描述:本章介绍开发Java的基础语法知识。 accumulationByDoWhile.java 用do~while语句写的累加程序 ...
本书可作为高等院校“网页设计与开发”类课程教材,也可作为网站制作、Web程序设计培训教材,还可作为网页设计与Web编程爱好者的自学参考书。 本书特点 ●构思清晰,结构合理。 ●内容全面系统,语言简洁...
42、一个“.java”源文件中是否可以包含多个类(不是内部类)?有什么限制? 12 43、说出一些常用的类,包,接口,请各举5 个。 12 44、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类?是否可以...
本书是第II卷,以开发人员在项目开发中经常遇到的问题和必须掌握的技术为中心,介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作...
SparkPost Java库 在Java应用程序中使用此库可轻松访问应用程序中的SparkPost Email API。版本兼容性说明版本0.6.2-> 0.6.3 由于并且为了与旧版本和新版本的Apache HTTP Client保持兼容性, SPARKPOST_BASE_URL不...
37、MotionEvent 中获取坐标的问题 63 38、添加多个Widget样式 63 39、为Activity添加快捷方式 67 40、点击widget获取ID 68 41、ViewFlipper小动画 69 42、setTextColor的问题 70 43、获取程序信息并kill 70 44、...
面向对象的思想方法已经非常流行了,在编程语言(例如java,js)中,都运用面向对象的编程思想。在XML中,就是要将网页也作为一个对象来操作和控制,我们可以建立自己的对象和模板。与对象进行交流,如何命令对象,...
程序可以采用 JAVA 开发,但是因为它的虚拟机 (Virtual Machine) Dalvik ,是将 JAVA 的 bytecode 转成 自 己的格式,回避掉需要付给 SUN 有关 JAVA 的授权费用。 对手机制造者的影响 � Android 是款开源的移动计算...
这是个小型的系统,从投入的人力,财力与物力来讲是非常小的,发布出去之需要注册域名就可以了,从节省人力方面,可以让管理人员从繁与复杂的工作中解脱出来,做更多的工作。 2.2.3. 管理可行性 有IP地址、用户名...
16、在JAVA 中,如何跳出当前的多重嵌套循环? 9 17、构造器Constructor 是否可被override? 9 18、两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对? 9 19、是否可以继承String 类? 9 ...
实际上,如今更多复杂客户要求报表以各种硬拷贝和软拷贝形式传递,并且需要从各种数据源中获取数据,如XML,文本文件,LDAP,关系数据库以及应用数据库。Elixir Report 迎合了您的优秀,尤其可帮助您显著减少开发...
Action通常称之为ActionBean,获取从ActionSevlet传来的FormBean,取出FormBean中的相关信息,并做出相关的处理,一般是调用Java Bean或EJB等。 流程:在Struts中,用户的请求一般以*.do作为请求服务名,所有的...
最近自学java中的框架-struts写了一些小例子,这都是很经典的程序,如果大家瞧得起要下载去看看,顺便给俺找找不足的地方。我的qq 821865130 email qingtian_hechen@163.com 希望大家能多多给我帮助。在此谢谢各位!...
8.1 获取和安装FTP服务程序 135 8.2 FTP服务器的工作方式 137 8.3 配置FTP服务器 138 8.3.1 控制访问权—/etc/ftpaccess 文件 138 8.3.2 在传输时转换文件—/etc/ftpcon- versions文件 147 8.3.3 配置主机的访问权...