`
zengbo0710
  • 浏览: 414564 次
社区版块
存档分类
最新评论

在程序里处理简单的Email

阅读更多

package common;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class GetEmail {

 public static int MAXEMAILLEN = 256;
 
 /**
  * 从指定的字符串中提取Email
  *
  */
 public static String parse(String content) {
  String email = null;
  if (content==null || content.length()<1) {
   return email;
  }
  //找出含有@
  int beginPos;
  int i;
  String token = "@";
  String preHalf="";
  String sufHalf = "";
  
  beginPos = content.indexOf(token);
  if (beginPos>-1) {
   //前项扫描
   String s = null;
   i= beginPos;
   while(i>0) {
    s = content.substring(i-1,i);
    if (isLetter(s))
     preHalf = s+preHalf;
    else
     break;
    i--;
   }
   //后项扫描
   i= beginPos+1;
   while( i<content.length()) {
    s = content.substring(i,i+1);
    if (isLetter(s))
     sufHalf =  sufHalf +s;
    else
     break;
    i++;  
   }
   //判断合法性
   email = preHalf + "@" + sufHalf;
   if (email.length()>MAXEMAILLEN) {
    return null;
   }
  }
  return email;
 }
 /**
  * 判断是不是合法Email
  *
  */
 public static String isEmail(String email) {
  try {
   
   if (email==null || email.length()<1) {
    return null;
   }
   String check = "^([0-9a-zA-Z]+[_.0-9a-zA-Z-]+)@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2,3})$";
   Pattern regex = Pattern.compile(check);
   Matcher matcher = regex.matcher(email);
   boolean isMatched = matcher.matches();
   if(isMatched) {
    return email;
   } else {
    return null;
   }
  } catch (RuntimeException e) {
   return null;
  }
 }
 /**
  * 判断是不是合法字符
  *
  */
 public static boolean isLetter(String c) {
  boolean result = false;
  
  if (c==null || c.length()<0)
   return false;
  //a-z 
  if (c.compareToIgnoreCase("a")>=0 && c.compareToIgnoreCase("z")<=0)
   return true;
  //0-9
  if (c.compareToIgnoreCase("0")>=0 && c.compareToIgnoreCase("9")<=0)
   return true;
  //. - _
  if (c.equals(".") || c.equals("-") || c.equals("_") )
   return true;

  return result; 
 } 
}

 

分享到:
评论

相关推荐

    Java Email 发送程序

    Java Email发送程序是一种常见的开发需求,特别是在企业级应用中,用于发送通知、验证邮件或客户服务。这个程序通常基于JavaMail API来实现,它是一个开源的Java库,允许开发者在Java应用中发送和接收电子邮件。本篇...

    小程序-提取页面Email

    收集到的邮箱信息将被保存在名为`email.txt`的文件中,便于用户后续查看或进一步处理。 该工具的核心技术主要涉及以下几个方面: 1. **网络爬虫**:程序首先需要能够遍历网页,这通常通过网络爬虫技术实现。爬虫会...

    发送EMail的小程序(3200kb)

    标题中的“发送EMail的小程序”表明这是一个用于发送电子邮件的应用程序,可能是一个简单的桌面程序,体积为3200kb,意味着它不占用过多的磁盘空间,适合个人或小型团队使用。描述中的内容与标题相同,没有提供额外...

    基于ESMTP的EMAIL的发送程序

    下面是一个简单的Python ESMTP邮件发送程序示例: ```python import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText # 设置SMTP服务器和端口 smtp_server = "smtp...

    小程序(在网页上找Email地址)

    根据给定的小程序标题“小程序(在网页上找Email地址)”及描述“这个程序的作用是在任何一个网页上面得到源码,并且找到Email地址”,我们可以总结出以下相关知识点: ## 小程序功能概述 该小程序主要功能是抓取...

    android 自制发送Email程序 Intent在Email上的使用

    在Android平台上,开发一款能够发送电子邮件的应用程序,通常会利用Intent机制来实现。Intent是Android系统中的一个核心组件,它负责在应用程序之间传递消息,启动服务或者启动新的Activity。在这个场景下,我们主要...

    C# Email发送程序

    在IT领域,C#是一种广泛使用的编程语言,尤其在开发Windows应用程序、Web应用程序以及服务器端应用时。在本场景中,我们关注的是使用C#来编写一个电子邮件发送程序。这通常涉及到.NET框架中的System.Net.Mail命名...

    用java编写的Email 源程序

    在给定的"用java编写的Email 源程序"中,我们可以看到这是一份使用Java实现的SMTP(Simple Mail Transfer Protocol)邮件发送功能的源代码。SMTP是互联网上用于发送电子邮件的标准协议。这个程序可能包含了设置、...

    email客户端程序

    JavaMail API是一个开源的库,提供了丰富的类和接口来处理SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP(因特网消息访问协议)等邮件服务。这些协议是电子邮件系统的核心,分别用于发送、接收和管理邮件。 ...

    POP3 Email 程序全面支持MIME

    在处理MIME邮件时,我们还需要解析邮件中的MIME结构,这通常涉及到读取邮件头信息,识别MIME类型的边界,然后逐个处理每个部分。这可能包括解码Base64编码的数据,或者提取嵌入的资源。 开发这样的程序时,有几个...

    发送EMail的小程序

    4. `smtpDoc.cpp`和`smtpView.cpp`:在MFC(Microsoft Foundation Classes)框架中,`Doc`和`View`类分别代表文档和视图,这是MFC应用程序设计模式的一部分,用于处理数据和显示数据的界面。 5. `MainFrm.cpp`:...

    email邮件的程序

    具体实现细节可能在提供的文档`一份完完整整的发送email邮件的程序).doc`中有所阐述。 总之,创建一个电子邮件程序涉及网络编程、邮件协议的理解以及使用.NET框架中的相关类库。通过掌握这些知识,你可以构建出能够...

    VC简单发EMAIL

    在VC++(Visual C++)开发环境中,"VC简单发EMAIL"是一个小型应用程序,它利用用户的默认电子邮件设置来实现自动发送邮件的功能。这个程序对于那些需要集成电子邮件发送功能的开发者来说,是一个简单易懂的起点。...

    Email源码下载(一个接收邮件程序)

    本资源“Email源码下载(一个接收邮件程序)”提供了一个实用的学习实例,帮助开发者深入理解邮件传输的过程以及相关网络协议。下面将详细阐述相关知识点。 1. **SMTP与POP3协议**:邮件的发送和接收主要依赖两种...

    email 程序可收发邮件

    本示例是一个用C++语言编写的简易电子邮件程序,它使用户能够与SMTP(简单邮件传输协议)服务器进行交互,完成邮件的发送,同时也可能支持POP3或IMAP(邮局协议)来收取邮件。下面将详细介绍涉及的知识点。 1. **...

    发送email程序

    总的来说,这个“发送Email程序”展示了如何在C++ Builder环境中利用特定控件实现邮件服务功能。通过学习这个程序的源码,开发者可以掌握网络通信的基本原理,了解POP3和SMTP协议的运用,并提升在C++环境下进行网络...

    Android源码——Email程序源码.zip

    在分析源码时,可以先从这几个关键部分入手,逐步理解Email程序如何与服务器通信、如何存储邮件数据、如何呈现用户界面以及如何处理用户的操作。通过阅读源码,我们可以学习到Android系统中如何设计和实现一个完整的...

    Perl的Email 发送程序与插件

    `Email::Sender::Transport::Sendmail`则允许通过系统本地的sendmail程序发送邮件,这在某些环境可能更为方便。 在提供的压缩包文件`Perl Email Send`中,可能包含了示例的Perl脚本或配置文件,演示如何使用`Mail::...

    Email程序源码.zip

    【描述】这个Email程序源码专为Android设备设计,核心功能集中在邮件的发送上。虽然描述中没有提及接收邮件或其他高级功能,但我们可以推断,该源码可能提供了一个基础的、用户友好的界面,允许用户输入收件人、主题...

    自制发送Email程序

    【自制发送Email程序】 在Android应用开发中,发送电子邮件是一个常见的功能,许多用户可能需要通过应用程序分享信息或者发送反馈。本教程将详细讲解如何利用Intent实现一个自制的发送Email程序。 1. **Intent基础...

Global site tag (gtag.js) - Google Analytics