前言:

前一段时间,写了一个邮件的check。

其中有一个check选项是在@的右面不能有除字母数字 . - _以外的字符

于是,我写了如下的正则表达式 .*[@][[\w][.-_]]*$

问题:

java代码中使用时

String testMail = "sun@123@sun.com"

String mailRightCheckRel = “.*[@][[\\w][.-_]]*$”;

if (!testMail.matches(mailRightCheckRel)){

System.out.println("@的右侧有非法字符");

}

代码如果按照上面的那种方式写,这样的邮件地址就通过了

因为他只是查找是否含有这种格式的字符,从第二个@开始,确实含有

解决:

我们要做如下调整就OK了!

修正前;String mailRightCheckRel = “.*[@][[\\w][.-_]]*$”;

修正后;String mailRightCheckRel = “[^@]*[@][[\\w][.-_]]*$”;

总结:

在对于匹配某一个字符后面只能是某种匹配时,我们要注意

1.匹配到最后,在这里我们已经加上了$正则的结束标志。

2.确定从第一个这个字符开始。(第一个这个字符开始,是这次我所忽略的!)

使用正则表达式时,容易出错的地方~相关推荐

  1. 如果$.ajax函数迟迟得不到响应,那么最有可能出错的地方是请求参数写错了

    如下的$.ajax函数 $.ajax({url: url,// 请求的地址data:{id:id,pieceId:pieceId,pieceDesc:pieceDesc,actualStock:act ...

  2. 桩筏有限元中的弹性板计算_[转载]JCCAD建模分析桩筏基础容易出错的地方

    JCCAD建模分析桩筏基础容易出错的地方 首先建议认真读<JCCAD用户手册>,结构设计没有捷径好走.以下是笔者做过两个工程后的总结,以期节约读者使用JCCAD时的建模分析时间. 1.地质 ...

  3. PCB设计容易出错的地方都有哪些?

    PCB设计容易出错的地方都有哪些?你容易在这些地方出错吗,容易出错的话注意一下 一.资料输入阶段 1.在流程上接收到的资料是否齐全(包括:原理图.*.brd文件.料单.PCB设计说明以及PCB设计或更 ...

  4. IDEA调试SpringMvc项目时,出错:找不到ContextLoaderListener

    IDEA调试SpringMvc项目时,出错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade ...

  5. 利用OpenCV的函数cvtcolor()进行颜色空间转换时需要注意的地方

    OpenCV的函数cvtcolor()的原型如下: C++原型: void cv::cvtColor(InputArray src,OutputArray dst,int code,int dstCn ...

  6. 使用intellij的svn时提示出错: Can't use Subversion command

    为什么80%的码农都做不了架构师?>>>    使用Intellij的svn时提示出错:Can't use Subversion command line client: svn. ...

  7. 深度学习总结:用pytorch做dropout和Batch Normalization时需要注意的地方,用tensorflow做dropout和BN时需要注意的地方,

    用pytorch做dropout和BN时需要注意的地方 pytorch做dropout: 就是train的时候使用dropout,训练的时候不使用dropout, pytorch里面是通过net.ev ...

  8. 【报错笔记】在eclipse中做Spring项目时,创建Spring容器时老是出错

    在eclipse中做Spring项目时,创建Spring容器时老是出错 写完这句代码无法导包,最后发现包导错了,我原来导的4.3.9的包,而且是后缀为其他的包,而且对JDK也有要求,我又下载了5.0. ...

  9. python打开方式错误_浅谈python 调用open()打开文件时路径出错的原因

    昨晚搞鼓了一下python的open()打开文件 代码如下 def main(): infile =open("C:\Users\Spirit\Desktop\bc.txt",'r ...

  10. “启动Word时提示出错,只能用安全模式才能打开”的解决方法

    启动Word时提示出错,只能用安全模式才能打开,在这种模式下,一些功能将被禁用.而且,每次启动都会出现这样的提示信息,同事们很多向我求助.提示窗口如下: 于是我采取了以下一些措施: 1.用Office ...

最新文章

  1. excel 按数据拆分 xlam_Excel按类别名称自定义排序:玩转Excel数据
  2. 团队冲刺(二)个人工作总结9
  3. python 向量余弦相似度
  4. MySQL学习笔记05【多表操作、三大范式、数据库的备份和还原】
  5. QML资源加载和网络透明度
  6. 数据库-优化-慢查日志的存储格式
  7. combox 增加请选择_娱乐测试:选择四种花束中的一种,测试你对婚姻的看法
  8. mysql 查看root_Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
  9. Web前端开发:SQL Jsp小项目(一)
  10. 【nginx】关于fastcgi_cache
  11. linux 网站获取数据失败,AnyBackup-Linux 环境下 Sybase 授权数据库实例时,提示错误:获取实例失败...
  12. 如何安装vscode网页版_如何让用编辑器编写EverNote?
  13. text-transform 文本大小写转换、input checkbok 大小设置、letter-spacing 设置字符间距
  14. 求解图的连通块数量——DFS方法实现
  15. python+OpenCV jpg图片的压缩
  16. 微信视频聊天怎么美颜?以下方法可以帮到你!
  17. 汇编语言与计算机系统组成课后答案,汇编语言与计算机系统组成
  18. 信息系统项目管理师-项目整合管理
  19. 【人工智能项目】- 卷积神经网络实现游客评价情绪鉴别
  20. 湖北审协计算机领域,国家知识产权局专利局专利审查协作湖北中心

热门文章

  1. python决策树 value_直播案例 | 决策树、随机森林和 AdaBoost 的 Python 实现
  2. linux匹配数字正则,51CTO博客-专业IT技术博客创作平台-技术成就梦想
  3. 微信messageutil.java_java微信公众平台开发回复文本消息
  4. Cocos2dx--------内存管理
  5. 随手记android面试题,synchorinzed的一个面试题
  6. 恢复初始快捷键_CAD常用命令快捷键大全,47个快捷键50个CAD技巧,教你快速画图...
  7. Uber开源基于web的自主可视化系统,可共享数据
  8. SPEC2016亚洲峰会召开在即,中国市场服务器效率首度解密
  9. javascript三元操作符
  10. 应用内截屏的代码,在Activity中测试可用