用java和java scipt进行电子邮件地址的正则表达式验证

我们使用下面的正则表达式来验证java中的电子邮件地址^[w!#$'*+=?^/_~-]+(.[w!#$'*+=?^/_~-]+)*@([a-zA-Z0-9-]+.)+[AZ]{2,4}$ ,它工作正常与无效的电子邮件地址raju.rathi@gmail.com&^(*&^(*^2但是当我在JavaScript中使用相同的正则表达式,它不起作用并失去甚至有效的电子邮件地址。请建议可能是这种不匹配的根本原因?

例如在JavaScript中,我得到以下测试条件的虚假值 -

/^[w!#$'*+=?^/~-]+(.[w!#$'*+=?^/~-] +)*([a-zA-Z0-9 - ] + 。)+ [AZ] {2,4} $ /。test(“raju.rathi@gmail.com”)


你需要在Javascript正则表达式中将转换为

/^[w!#$'*+=?^/~-]+(.[w!#$'*+=?^/~-]+)*@([a-zA-Z0-9-]+.)+[A-Z]{2,4}$/i.test("raju.rathi@gmail.com")

还有很多像$+*等特殊的正则表达式字符不需要在字符类中转义,因此我已经从字符类中移除了不必要的转义字符。


试试这个,它适用于我。

/^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,6})$/.test('raju.rathi@gmail.com');

<html>

<body>
  <script>
    var flag = /^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,6})$/.test('raju.rathi@gmail.com');
  </script>
  <h5><script>document.write(flag)</script></h5>
</body>

</html>
链接地址: http://www.djcxy.com/p/16525.html

上一篇: Regex validation in java and java scipt for email address

下一篇: Validate email address with folder using regex in Javascript