解析一个邮箱地址是否合法,如果合法则打印出用户名部分和该邮箱所属的网站域名,如果邮箱地址不合法则显示不合法的原因
package Text6;
import java.util.Scanner;
import org.omg.Messaging.SyncScopeHelper;
public class Zuoyexuanzuo2 {
public static void main(String[] args) {
Zuoyexuanzuo2();
}
private static void Zuoyexuanzuo2() {
Scanner sc = new Scanner(System.in);
System.out.println("邮箱:");
String mail = sc.nextLine();
//邮箱地址中不包含@或.
if(mail.indexOf("@") == -1){
System.out.println("邮箱地址中不包含@");
}if(mail.indexOf(".") == -1){
System.out.println("邮箱地址中不包含.");
}
//邮箱地址中含有多了@或.
int a = 0;
for(int i = 0;i < mail.length();i++){
if(mail.charAt(i) =='@' ){
a++;
}
}if(a>1){
System.out.println("邮箱地址中含有多余的@");
}
int b = 0;
for(int i = 0;i < mail.length();i++){
if(mail.charAt(i) =='.' ){
b++;
}
}if(b>1){
System.out.println("邮箱地址中含有多余的.");
}
//邮箱地址中.出现在@的前面
int index = mail.indexOf('@');
int index1 =mail.indexOf('.');
if(index1 <= index){
System.out.println("邮箱地址中.出现在@的前面");
}
//用户名里有其他字符
String R = "\\w + @ \\w +\\.\\w{2,3} ";
if(!(mail.matches(R))){
System.out.println("用户名里有其他字符");
}
}
}