最小和最大字符的正则表达式,没有空格

时间:2012-06-08 12:36:55

标签: asp.net .net regex passwords

我需要验证字符串是否包含最少6个字符和最多8个字符,不包含空格。字符串中可以使用任何字母数字字符。

我正在使用带有C3的asp.net,我将为此目的使用正则表达式验证。

4 个答案:

答案 0 :(得分:3)

正则表达式^\w{6,8}$应该完成这项工作:

  • ^ - 字符串开头
  • \w - 单词字符
    • {6,8} - 6至8次
  • $ - 字符串结尾

正如Ianzz在评论中所说,你真的不应该限制你的用户可以用作密码:

  

不要限制密码或最大长度允许的字符数;只检查最小长度。

答案 1 :(得分:1)

这实际上是一个非常简单的表达方式来匹配。如果你的正则表达式引擎不支持间隔,你可能需要稍微调整一下。

/(?x)
  ^            # start of string
  [[:alnum:]]  # POSIX alphanumeric class
  {6,8}        # minimum 6 matches, maximum 8
  $            # end of string
/

这适用于Ruby REPL。你的正则表达式引擎的synax可能会有所不同,但这应该让你指向正确的方向。

答案 2 :(得分:0)

您没有指定您使用的是哪种语言,但在这种情况下它并不重要。

我假设是Javascript,所以那就是:

/^[a-z0-9]{6,8}$/i

//我是要忽略大小写。你也可以使用:

/^[a-zA-Z0-9]{6,8}$/

答案 3 :(得分:0)

由于你没有完成任何工作,我会给你分数,但是由你来决定它们是如何组合在一起的。

字母数字字符可以由[a-zA-Z0-9]表示,也可以由\w表示 (编辑此部分是因为下面的正确评论,mea culpa)

句子的开头用^标记,结尾用$

标记

数量限定符为6-8表示为{[min],[max]},其中[min][max]需要用明显的数字替换

根据正则表达式的类型,您可能还需要将其与边界括起来,惯例通常有利于/,因此您的regep将为/[regexp here]/

通过这些你可以将你的表达拼凑在一起。玩得开心。 :)