邮箱验证

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/249555.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python第二十八课——编码小常识

2.内存和硬盘&#xff1a;内存&#xff1a;计算机硬件组成部分之一&#xff0c;它是一个容器&#xff0c;用来存储数据&#xff1b;处理数据速度快&#xff0c;存储数据量小&#xff1b;断电死机数据会丢失&#xff0c;短暂性存储数据硬盘&#xff1a;计算机硬件组成部分之一&a…

Javadoc 使用详解

很多程序对Javadoc都不重视&#xff0c;认识不到Javadoc的作用&#xff0c;很多人都是这样认为的&#xff1a;“我只要写好功能就够了&#xff0c;写Javadoc太浪费时间&#xff0c;也没啥作用&#xff0c;还不如用写Javadoc的时间再多些个功能呢&#xff01;”&#xff0c;我们…

Linux下查看当前文件大小的命令

1、ls -lht 列出每个文件的大小和当前目录所有文件大小总和 2、du -sh * 列出当前文件夹下的所有子文件的大小 看你需要啥样的&#xff0c;自己来吧 转载于:https://www.cnblogs.com/xbxxf/p/9619818.html

(13)UniquePathIII

一、问题描述 给定一个二维数组。 数组只有一个元素是1&#xff0c;是起点数组只有一个元素是2&#xff0c;是终点数组中的0是必须经过的地方数组中的-1是障碍不可通过从起始点到终点一共有多少路径&#xff1f; 二、思路 DFS 三、Code 1 package algorithm;2 3 /**4 * Create…

Spring IOC-BeanFactory的继承体系结构

本文主要介绍BeanFactory以及它的各种继承层级的接口、抽象类及实现类&#xff0c;因为内容很多&#xff0c;所以这里不介绍ApplicationContext继承体系下的类&#xff08;虽然ApplicationContext本质上也是BeanFactory&#xff0c;但是毕竟这这是我们平时接触最多的两种类别&a…

deepin15.7挂载/home到单独的分区:

1、首先打开Gpart分区编辑器&#xff0c;找一个空闲的分区&#xff0c;调整好分区大小&#xff0c;格式化成ext4格式。 具体步骤为首先unmount所用到的盘&#xff0c;然后右击该盘选择format to ext4&#xff0c;最后点击apply提交修改 2、记录下分区的路径&#xff0c;比如 /d…

Java使用Redis实现分布式锁来防止重复提交问题

如何用消息系统避免分布式事务&#xff1f; - 少年阿宾 - BlogJavahttp://www.blogjava.net/stevenjohn/archive/2018/01/04/433004.html 【请求去重】java基于分布式锁解决重复请求问题 - qq_41793222的博客 - CSDN博客https://blog.csdn.net/qq_41793222/article/details/830…

【PHP】xampp配置多个监听端口和不同的网站目录(转)

转自&#xff1a;https://blog.csdn.net/cc1314_/article/details/75646344 windows下使用xampp配置多个监听端口和不同的网站目录 一&#xff1a;配置Apache文件httpd.conf打开Apache的配置文件httpd.conf&#xff0c;可以通过点击xampp的Apache的config下的Apache(httpd.conf…

本地连接虚拟机 Oracle数据库 报ORA-12541:TNS:no listener

一、环境 本机环境&#xff1a;win10,pl/sql Developer 虚拟机环境&#xff1a;win10&#xff0c;oracle 11g 1.本机和虚拟机互相ping都可以ping通。 2.虚拟机监听程序已启动。 二、配置文件 1.本机 tnsname.ora 配置文件 local (DESCRIPTION   (ADDRESS_LIST   (ADDR…

Java消息中间件

1.概述 中间件 非底层操作系统软件&#xff0c;非业务应用软件&#xff0c;不是直接给最终用户使用的&#xff0c;不能直接给客户带来价值的软件统称为中间件。 消息中间件 管制关注于数据的发送和接收&#xff0c;利用高效可靠的异步消息传递机制集成分布式系统。 优点 ① 解…

form 源码刨析

def clean_name(self) value self.cleaned_data.get(name) if "金-瓶-梅" not in value: raise ValidationError("不符合要求") return value 重写clean方法 转载于:https://www.cnblogs.com/wuheng-123/p/9623289.html

两道面试题

fi [] for i in range(3):def foo(x):print(x i) #由于函数在这时还没有执行&#xff0c;在这里的i&#xff0c;指向的还是同一个IP地址&#xff0c;所以都是2.fi.appent(foo) for f in fi:f(2)答案&#xff1a;4&#xff0c;4&#xff0c;4 a [0, 1, 2, 3, 4] print(a[-6:6…

uiautomator2进阶

点击控件的具体位置 d(text"Settings").click(offset(0.5, 0.5)) 点击控件的中间位置 d(text"Settings").click(offset(0, 0)) 点击控件的左上方 d(text"Settings").click(offset(1, 1)) 点击控件的右下方 拖动控件 d(text"Settings&quo…

LIS路径记录(UVA481)

出自一次很失败的开学测试 LIS自然会做 可以参见&#xff1a;https://blog.csdn.net/Radium_1209/article/details/79704234 由于对于LIS的nlogn算法不熟悉&#xff0c;导致错误理解&#xff0c;记录的路径出现了问题&#xff0c;其中还用了n^2的算法记录路径&#xff08;好理解…

Activemq源码、编译、导入idea、源码调试总结

1、在本地下载源码 在GitHub官网搜activemq&#xff0c;找到排名第一的&#xff0c;并打开&#xff0c;如图所示&#xff0c;拷贝url地址。 activemq托管地址&#xff1a;https://github.com/apache/activemq.git 切换到git bash下&#xff0c;输入命令&#xff1a; mkdir a…

activiti 视图

1. application.properties增加如下配置 spring.activiti.database-schema-updatefalsespring.activiti.db-history-usedfalsespring.activiti.db-identity-usedfalse 2. 视图sql -- 修改表名称 ALTER TABLE act_id_user RENAME act_id_user_bak1; ALTER TABLE act_id_group RE…

ActiveMQ源码解析 建立连接

作为一个消息中间件&#xff0c;有客户端和服务端两部分代码&#xff0c;这次的源码解析系列主要从客户端的代码入手&#xff0c;分成建立连接、消息发送、消息消费三个部分。趁着我昨天弄明白了源码编译的兴奋劲头还没过去&#xff0c;今天研究一下建立连接的部分。 如果读起…

原生Js_实现广告弹窗

广告样式当页面加载后5s刷新在右下角 <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>Gary图片轮播</title><style type"text/css">#ad{width:300px;height: 300px;background-color:antiquewhite…

springcloud注册中心eureka

1、前提 springcloud的注册中心是以springboot为基础搭建起来的。 开发工具&#xff1a;IDEA 项目管理工具&#xff1a;maven 2、搭建步骤 创建一个web项目&#xff08;建议使用IDEA工具构建项目&#xff09;修改pom文件 <dependency><groupId>org.springframework…

Nancy in .Net Core学习笔记 - 视图引擎

前文中我们介绍了Nancy中的路由&#xff0c;这一篇我们来介绍一下Nancy中的视图引擎。 Nancy中如何返回一个视图(View) 在ASP.NET Mvc中&#xff0c;我们使用ViewResult类来返回一个视图。Nancy中也提供了类似的功能, 在NancyModule类中&#xff0c;Nancy提供了一个ViewRendere…