【问题标题】:regular expression for Alpha numeric,no spaces and 9 character input?字母数字的正则表达式,没有空格和 9 个字符输入?
【发布时间】:2013-04-24 06:53:04
【问题描述】:

我用过

"^[a-zA-Z0-9]*$" 

对于字母数字没有空格它的工作

现在我必须限制只允许 9 个字符,不能多,不能少 9

【问题讨论】:

  • "^[a-zA-Z0-9]*$" 允许空字符串,而 "^[a-zA-Z0-9]+$" 至少需要一个字符。

标签: javascript asp.net regex validation


【解决方案1】:

您可以使用花括号来设置重复限制:

"^[a-zA-Z0-9]{9}$" 

这只会匹配字符类中的模式恰好重复 9 次的字符串。

请注意,您也可以使用它来将重复限制在一个范围内。此示例仅匹配字符类模式重复 3 到 5 次的字符串:

"^[a-zA-Z0-9]{3,5}$"

您可以省略第二个数字,但保留逗号以指定最小重复次数,因此这个将匹配“至少 5”:

"^[a-zA-Z0-9]{5,}$"

【讨论】:

  • +1。这个问题没有特别需要,但您可能需要考虑提及{min,max} 以及您拥有的表格{exact}
  • @paxdiablo - 谢谢,在你写评论时正在编辑它!
  • 是的,认为更新有点快 :-) 不幸的是,不能再次投票,但希望你能得到更多。但是只要添加{5,},JS 是否也允许{,5}?没关系,似乎没有(这对我来说似乎是语法上的一个漏洞)。虽然我猜你总是知道这种情况下的下限(0),而上限是任意高的。
  • 快速回答。我会提供更多 :) 您还可以添加不错的在线正则表达式生成器:gskinner.com/RegExr 在此类工作中大有帮助。
  • @paxdiablo - 确切地说,您将始终知道下限,因此不需要语法。
【解决方案2】:

最简单的方法是将范围验证器与正则表达式验证器一起使用。或与 James Allardice 解决方案,它也可能对您有所帮助。但我会建议使用 Range Validator 以及正则表达式 click

【讨论】:

    猜你喜欢
    • 2015-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-14
    • 1970-01-01
    • 1970-01-01
    • 2012-09-12
    相关资源
    最近更新 更多