javascript-使用正则表达式的邮件交换服务器字符串验证

时间:2019-03-05 09:14:08

标签: javascript regex

如何通过Regex以mx*.m**p.com的形式验证mx服务器(类似于域)?第一颗星可以是任何数字,没有其长度预定义的1、11、111、1111,且不带前导0。第二颗和第三颗星星是单个字母,范围为0-9和a-Z。

示例:

  • mx1.m0bp.com
  • mx321.maBp.com

2 个答案:

答案 0 :(得分:1)

^mx[1-9][0-9]*\.m[0-9a-zA-Z]{2}p\.com$

  • ^表示字符串的开头
  • mx是预期的字符
  • [1-9]该数字不能以0开头,因此必须以1-9开头
  • [0-9]*后跟零个或多个其他数字
  • \.点必须转义,因为它具有特殊含义
  • [0-9a-zA-Z]{2}恰好是两个具有给定范围的字符
  • p\.com再次将下一个预期字符与另一个转义点
  • $表示字符串的结尾

包含^$意味着您不会从foomx1.m0bp.commx1.m0bp.comfoo匹配

答案 1 :(得分:1)

您可以使用以下正则表达式来测试域:

mx[0-9]+\.m[0-9a-zA-Z]{2}p\.com

console.log(/mx[0-9]+\.m[0-9a-zA-Z]{2}p\.com/gi.test("mx1.m0bp.com"))

console.log(/mx[0-9]+\.m[0-9a-zA-Z]{2}p\.com/gi.test("mx321.maBp.com"))