js和java中使用正则表达式校验邮箱

时间:2023-03-08 17:39:28
js和java中使用正则表达式校验邮箱

问题:经常在项目中要校验邮箱?

  邮箱格式:首位必须为字母,必须包含一个@符号,并且@之后有个名字,之后还有个.,再有一个后缀名

  例如:wyp55023@163.com

 

一、java中代码如下:

String reg="[A-z]+[A-z0-9_-]*\\@[A-z0-9]+\\.[A-z]+";
System.out.println("wyp55023@163.com".matches(reg));

解释:

  [A-z]+:表示至少出现一次或多次内容为a-z/A-Z的字母
  [A-z0-9_-]*:表示可以出现0次或任意次内容为a-z/A-Z/_/-的字母
  \\@:双斜杠表示转义字符实际上是想匹配@符号
  \\.:同\\@

二、javascript中的代码如下:
    <script type="text/javascript">
  var email="wyp55023@163.com";
   var reg=/[A-z]+[A-z0-9_-]*\@[A-z0-9]+\.[A-z]+/;
   alert(reg.test(email));
</script>
解释:同java上
附注:

  [0-9]:0-9中任意一个
  [a-z]:a-z中任意一个
  [A-Z]:A-Z中任意一个
  [A-z]:A-Z和a-z中任意一个
  \d:数字
  \D:非数字
  \w:字母
  \W:非字母
  \S:空格
  \s:非空格
  n+:至少一个 n 的字符串
  n*:零个或多个 n 的字符串
  n?出现0次或多次
  {5}出现5次
  {2,8}2到8次