java :从控制台输入一个字符串,验证是不是邮箱?实例一个

 我来答
dirainy2011
推荐于2017-10-11 · TA获得超过442个赞
知道答主
回答量:33
采纳率:0%
帮助的人:61万
展开全部
楼主你没说清楚合法邮箱的规则呀。下面我自定了一个合法邮箱规则,希望能帮助楼主理解。
代码如下:
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);

System.out.println("请输入一个邮箱地址:");
String mail = sc.nextLine();

/*
设定邮箱地址的合法规则,合法邮箱地址要求如下:
(1)字符必须是英文或数字开始
(2)必须包含一个@
(3)@符号在. 符号前面
(4)以英文或数字结尾

*/
//设置一个正则表达式
String reg = "[\\w]+@[\\w]+.[\\w]+";

//告知此字符串是否匹配给定的正则表达式。
if(mail.matches(reg)) {
System.out.println("邮箱地址合法!");
}
else {
System.out.println("邮箱地址不合法!");
}

}
}

这里主要是采用正则表达式的方式。关于正则表达式,楼主可以查看Pattern类和Matcher类。楼主可以可以到网上查看下相关资料。很快就能理解了。

这里解释下上面的正则表达式String reg = "[\\w]+@[\\w]+.[\\w]+";
\w 表示单词字符:[a-zA-Z_0-9],上面是两个反斜杆是因为反斜杆是转义字符
+号表示:出现一次或多次 ,所以[\\w]+意思就是一到多个单词字符(英文或数字)
@ :直接表示@字符
.:表示点字符
综上所述。
String reg = "[\\w]+@[\\w]+.[\\w]+";的意思就是 :一到多个字符 + @ + 一到多个字符 + 点 + 一到多个字符。
正则表达式使用的好。可以解决很多问题。希望楼主能学好~~
没有响应m2
2011-12-05 · TA获得超过8387个赞
知道大有可为答主
回答量:7579
采纳率:33%
帮助的人:3513万
展开全部
这个可以用正则表达式.应该会简单..但是我之听说过正则表达式不会用.
用笨办法..检查下字符串中是否含有 @ 然后最后3 到4位是不是.com .cn .cc什么的就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友ea9088f10
2011-12-06 · TA获得超过327个赞
知道答主
回答量:412
采纳率:0%
帮助的人:167万
展开全部
正则表达式能实现 网上有很多 你找找看看 一个一个测试一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式