正则表达式至少一个字符和一个数字,不重复超过两个

时间:2015-04-07 16:33:07

标签: javascript c# asp.net regex

我正在尝试使用正则表达式之一,例如:

至少1个号码, 至少1个字符, 应该是3到16位长。 没有字符和数字应该重复超过2次。

我在这里尝试了一个正则表达式。

(^(?=.*\d)(?=.*[a-zA-Z]).{3,16}$)\1{2,}

但它并没有成功。

有效和无效帖子的示例:

  • advan @ 123 -valid

  • advan @ 4 -valid

  • advvvan @ 123 -invalid

  • advan @ 11123 -invalid

  • advan123 -valid
  • 1231123123ab -valid
  • advadvvadv12 -valid

1 个答案:

答案 0 :(得分:2)

您可以尝试使用此正则表达式(已编辑以使具有三个连续符号的字符串失败):

^(?=.*[0-9])(?=.*[a-zA-Z])(?!.*(.)\1\1.*).{3,16}$

请参阅example here