ITPub博客

首页 > IT基础架构 > 网络安全 > 从outlook导入email地址 (转)

从outlook导入email地址 (转)

原创 网络安全 作者:amyz 时间:2007-08-16 19:58:07 0 删除 编辑
从outlook导入email地址 (转)[@more@]

Outlook有一种eMail地址格式,采用逗号分隔开字段,扩展名叫CSV。
例如:
"姓名","称谓","单位名称","部门","职务","邮政地址","邮政编码","电话","传真","统一编码","其他电话","单位其他","移动电话","呼机","主页","电子邮件","备注"

程序打开文件,每行读取
只用第一个逗号前的字符串作为姓名,email地址匹配格式取第一个(位置无关)
于是写下粗陋程序:
 private static final String repmail ="([w.-]+[@]{1}((w)+[.]){1,3}(w)+)";
 private static final String repname =".+?,";
 Pattern mailPattern = Pattern.compile(repmail );
 Pattern namePattern = Pattern.compile(repname);


 File file = new File("test.CSV");
 FileInputStream is = new FileInputStream(file);
 BufferedReader br = new BufferedReader(new InputStreamReader(is));
 String input = null;
 ArrayList list = new ArrayList();
 while((input = br.readLine())!=null){
 Matcher matchermail = mailPattern.matcher(input);
 Matcher matchername = namePattern.matcher(input);
 String[] card = new String[2];
 if(matchername.find()){
   card[0] = matchername.group(0).replaceAll(""","");
 }
 if(matchermail.find()){
 card[1] = matchermail.group(0);
 }
 if(card[0]==null || card[0].equals("") || card[1]==null || card[1].equals("")){
 continue;
 }
 list.add(card);
 }
//输出
 for(int i=0;i System.out.println(((String[])list.get(i))[0] + ":" + ((String[])list.get(i))[1]);
 }

 


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10752019/viewspace-962578/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 增强字符串 (转)
请登录后发表评论 登录
全部评论
  • 博文量
    3982
  • 访问量
    7896333