不能使用正则表达式,按以下需求验证一个字符串是否符合正确电子邮件格式。 50

问题如下:不能使用正则表达式,按以下需求验证一个字符串是否符合正确电子邮件格式。假设email仅由字母、“@”和“.”组成,正确格式如:abc@aa.bb或abc@aa.... 问题如下:不能使用正则表达式,按以下需求验证一个字符串是否符合正确电子邮件格式。
假设email仅由字母、“@”和“.”组成,正确格式如:abc@aa.bb或abc@aa.bb.cc等;
假设需要输入的字符串在一个恶意输入的环境中;
验证步骤可用流程图或文字说明,验证思路清晰明了,可使用中文说明清楚。
这是一道java笔试题。
展开
 我来答
li346886697
2014-04-06 · TA获得超过127个赞
知道小有建树答主
回答量:281
采纳率:0%
帮助的人:213万
展开全部
private static boolean check_A_Z(String str)

 {

  for (int i = 0; i < str.length(); i++)

  {

   char c = str.charAt(i);

   if(('a' <= c && c <= 'z') || ('A' <= c && c <= 'Z'))//确保是字母

   {}//此处为了好理解 才这样写

   else

   {

    return false;

   }

  }

  return true;

 }

 public static boolean check(String str)

 {

  int index = str.indexOf("@");

  if(index != -1)//至少包含一个@符号

  {

   String first = str.substring(0, index);

   if(!check_A_Z(first))//如果不是字母

   {

    return false;

   }

   

   String com[] = str.substring(index + 1, str.length()).split("
\\.");//
此处的.需要转义

   if(com.length <= 1 || com.length > 3)//不包含. 或者包含3个.

   {

    return false;

   }

   

   for (int i = 0; i < com.length; i++)//后面每一个.分割的 都得是字母

   {

    if(!check_A_Z(com[i]))

    {

     return false;

    }

   }

   return true;//满足全部规则 返回true 

  }

  return false;//如果没有@或者其他情况

 }

 public static void main(String[] args)

 {

  System.out.println(check("
a@dc.o.m
"));

 }
追问
你好,请问“if(com.length  3)//不包含. 或者包含3个”这段是什么意思?
追答
就是要求保证 @符号的后面 包含"." 的个数为1~2
夜来雨早来晴
推荐于2017-09-02 · TA获得超过3.1万个赞
知道大有可为答主
回答量:9110
采纳率:60%
帮助的人:820万
展开全部
为了验证该电子邮件地址是有效的,该方法调用 Regex.IsMatch(String, String) 方法来验证此地址符合正则表达式模式。可以使用 IsValidEmail,在应用程序将地址存储在数据库中或显示在 ASP.NET 页中之前,筛选出包含无效字符的电子邮件地址。
请注意,IsValidEmail 方法不执行身份验证来验证电子邮件地址。
它只确定其格式对于电子邮件地址是否有效。C#VBImports System.Text.RegularExpressions Module RegexUtilities Function IsValidEmail(ByVal strIn AsString) AsBoolean' Return true if strIn is in valid e-mail format.Return Regex.IsMatch(strIn。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式