邮箱验证

public class Emailstandard {
    /*
     * 以数字或字母开头
     * @之前可以含有数字,字母,下划线,点
     * @有且只有一个
     * @之后只能含有数字,字母
     * 必须以.com或者.cn结尾
     * */
    public static void main(String[] args) {
        Scanner sca = new Scanner(System.in);
        String email = sca.next();
        String [] str= email.split("@");
        if(str.length!=2) {
            System.out.println("@不是一个");
        }else {
            if(start(str[0])&&d(str[0])&&end(str[1])) {
                System.out.println("成功");
            }    
        }
    }
    
    public static boolean start(String str){
        if(Character.isDigit(str.charAt(0))||Character.toUpperCase(str.charAt(0))!=Character.toLowerCase(str.charAt(0))) {
            return true;
        }else {
            System.out.println("不是以数字或字母开头");
            return false;
        }
    }
    public static boolean d(String str) {
        char [] ch = str.toCharArray();
        int j = 0;
        for (int i = 0; i < ch.length; i++) {
            if(Character.isDigit(ch[i])||(Character.toUpperCase(ch[i])!=Character.toLowerCase(ch[i]))||ch[i]=='_'||ch[i]=='.') {
                j++;
            }
        }
        if(j==ch.length) {
            return true;
        }else {
            System.out.println("包含非法字符");
            return false;
        }
    }
    public static boolean e(String str) {
        char [] ch = str.toCharArray();
        int j = 0;
        for (int i = 0; i < ch.length; i++) {
            if(Character.isDigit(ch[i])||(Character.toUpperCase(ch[i])!=Character.toLowerCase(ch[i]))) {
                j++;
            }
        }
        if(j==ch.length) {
            return true;
        }else {
            System.out.println("包含非法字符");
            return false;
        }
        
    }
    public static boolean end(String str) {
        if(str.endsWith(".com")) {
            String s =str.substring(0,str.length()-4);
            return e(s);
        }
        if(str.endsWith(".cn")) {
            String s =str.substring(0,str.length()-3);
            return e(s);
        }
            return false;
        
    }

}

转载于:https://www.cnblogs.com/xiaosuye/p/9615295.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值