从文件中提取email地址

简介:

在网上看了一篇文章是关于提示email的,看了以后觉得作者的正则表达式有些问题,所以自己就修改了一下,源码如下:

 
  1. package com.sucre.api.test;   
  2. /**   
  3.  * 提取邮件地址  
  4.  * @author 乔磊   
  5.  * @version create time:2011-1-7 上午10:55:05   
  6.  *   
  7.  */ 
  8.  
  9. import java.io.File;  
  10. import java.io.IOException;  
  11. import java.util.regex.Matcher;  
  12. import java.util.regex.Pattern;  
  13. import org.apache.commons.io.FileUtils;  
  14.  
  15. public class EmailParser {  
  16.       
  17.     private final static Pattern emailer = Pattern.compile("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");  
  18.     public static void main(String[] args) throws IOException {  
  19.         String txt = FileUtils.readFileToString(new File(args[0]));  
  20.         Matcher matchr = emailer.matcher(txt);  
  21.         while (matchr.find()) {  
  22.             String email = matchr.group();  
  23.             System.out.println(email);  
  24.         }  
  25.     }  
  26.  

作者先前的正则表达式是这样的

 
  1. private final static Pattern emailer = Pattern.compile("[\\w[.-]]+@[\\w[.-]]+\\.[\\w]+");  

这样在提取的时候会把aa@.com这样形式的email也提取出来的,所以是不正确的。



本文转自sucre03 51CTO博客,原文链接:http://blog.51cto.com/sucre/473736,如需转载请自行联系原作者

相关文章
|
1月前
|
C++
C++学习系列---读取文件名存入txt和从txt读取每行信息
C++学习系列---读取文件名存入txt和从txt读取每行信息
|
3月前
实现将信息作为txt,pdf,图片的形式保存到电脑~
实现将信息作为txt,pdf,图片的形式保存到电脑~
|
5月前
|
存储 Python
【可定制、转换时间戳】解析nc文件,并保存为csv文件
【可定制、转换时间戳】解析nc文件,并保存为csv文件
226 4
|
10月前
将读取的文本内容转换为特定格式
将读取的文本内容转换为特定格式
74 0
|
11月前
(模拟菜单选择实现)## 存入你的基本信息,在zhangsan.txt文件中## 显示你的基本信息## 统计zhangsan.txt含有good的文本数
(模拟菜单选择实现)## 存入你的基本信息,在zhangsan.txt文件中## 显示你的基本信息## 统计zhangsan.txt含有good的文本数
|
定位技术 iOS开发
讲解:如何将手机联系人转换成vcf格式(vcard格式)?
1、转换成vcf格式也就是vcard格式的话,你先在电脑打开个软件,金芝号码提取导入助手,然后把你的材料也就是一般常见的铭字和号码复制好,选择软件的第三个功能模块“导入通讯录”,依次把刚才复制好的材料,分别粘贴进软件的第一个框和第二个框。2、点击“转换通讯录”,你将得到一个vcf格式的文件(vcard格式),你把这个vcf文件保存到电脑桌面。3、当然了,我们的最终目的肯定不住于此。我们通过电脑矀xin或电脑Q,把这个vcf格式的文件发送给你手机矀xin或手机Q,你在手机上打开这个vcard,那么就会自动批量把号码导入通讯录了。
讲解:如何将手机联系人转换成vcf格式(vcard格式)?
方法:怎么将手机号改成vcf格式?
第(1)步:首先你在电脑上打开软件(金芝号码提取导入助手),然后你在电脑上准备好你的号码,号码一个一行一列,把它们复制粘贴到软件的功能模块“导入通讯录”。第(2)步:然后再点软件下方的“转化通讯录”,就可以得到一个vcf文件了,也就是把号码改成了vcf格式。第(3)步:你再把这个vcf文件,从电脑上发给你的手机,在手机上打开,就可以把号码一次性导入通讯录。以上便是:怎么将手机号改成vcf格式?的方法。细节:如果你只有号码,没有姓铭,那么需要复制号码粘贴到软件上的姓铭框那里,号码作为铭字。也就是放两遍号码就可以了。
方法:怎么将手机号改成vcf格式?
方法:怎么把电话号码做转成vcf文件格式?
第(一)步:空手肯定不行呀。你先准备号码和软件《金芝号码提取导入助手》。在电脑上打开这个软件,然后把你的号码复制粘贴到软件的第三个功能模块“导入通讯录”。第(二)步:点按钮“转换通讯录”,就可以在电脑上得到一个vcf文件,你把这个文件保存到电脑桌面。然后再发给你的手机。第(三)步:从电脑嶶xin发给你的手机q,在手机上打开这个vcf文件,就可以导入通讯录了。以上便是:怎么把电话号码做转成vcf文件格式?的方法。提醒:操作的时候,如果你只有号码,那就把号码重复放两次到软件的两个框,如果你有人铭更好,放到软件左边的框,没有就用号码代替。
方法:怎么把电话号码做转成vcf文件格式?
解答:excel格式的通讯录怎么转为手机可识别的vcf格式?
开始第一步:要实现题目中的要求,需要在电脑上准备一个软件《金芝号码提取导入助手》,然后你打开你的excel表格,通讯录一般是姓铭和号码嘛,你打开软件,把你的excel里面的人铭和号码分别复制好,然后选软件的第三个功能模块“导入通讯录”,粘贴铭字和号码进来软件。接着第二步:点软件界面上的“转换通讯录”,你就会得到一个vcf格式的文件,建议把文件保存到电脑桌面,方便再次找到和操作。最后第三步:你需要把这个vcf格式的文件发给你的手机(通过电脑矀xin或者电脑Q发给你的手机矀xin或者手机q就可以)。你到手机上打开这个vcf格式的文件,手机就可以自动识别这个文件实现自动把excel格式的通讯。
解答:excel格式的通讯录怎么转为手机可识别的vcf格式?