正则表达式的HTML5示例解决方案中的Regex模式



我正在测试输入元素的patterns属性,并且我构建了一个应该执行以下操作的正则表达式:用于测试输入是否是有效的电子邮件地址。是否有可能像我在HTML5中那样对各种正则表达式进行分组?

我试着这样分组:

pattern="[ ([a-zA-Z0-9+-.]{1,}) ([@]{1}) ([a-zA-Z0-9+-.]{1,}) ([.]{1}) ([a-zA-Z0-9+-.]{1,}) ]{5,254}"
  1. 允许a-zA-Z0-9+-.中的任意字符,至少1个字符。
  2. 后面应该有一个@
  3. 允许a-zA-Z, 0-9+-.中的任何字符,至少1个字符。
  4. 后面应该有一个点.
  5. 允许a-zA-Z以及0-9+-.中的任何字符,至少1个字符。
  6. 总共允许5-254个字符。

下面的正则表达式将满足您的所有条件。你不需要在模式中添加空格,

^(?=.{5,254}$)[a-zA-Z0-9+-.]{1,}@[a-zA-Z0-9+-.]{1,}[.]{1}[a-zA-Z0-9+-.]{1,}

在演示输入中添加一个字符,您可以看到差异。

演示

最新更新