【问题标题】:Regular expression to limit character & number限制字符和数字的正则表达式
【发布时间】:2015-10-29 02:11:16
【问题描述】:

我的正则表达式要求是数字和字符组合的exp。并且这限制了 5~15 个字符。

例如,

abcd1, abc1d, a21ab, 1abcd, abcvda123 ...
ABCd1, Abc1d, 

不允许举例,

abcd!1, !adf2a, abcd!a, abcd!2 ...
abc1, ab1c, 1abc, !abc ...

我的正则表达式是

^(?=.+[a-zA-Z])(?=.+[0-9]).{5,15}$

但是太糟糕了。

【问题讨论】:

  • 您的所有示例都包含一个数字(将21 视为一个数字)。 "a1c2e" 有效吗? "abcde""12345" 呢?
  • 测试值必须包含一个数字和一个字符。例如,abcd1, 1abcd。

标签: javascript numbers expression character


【解决方案1】:

.{5,15} 更改为[a-zA-Z0-9]{5,15}

此外,在前瞻中,将 .+ 更改为 .*。否则,如果之后类型的唯一字符是字符串中的第一个字符,它将不匹配。所以得到的正则表达式是:

^(?=.*[a-zA-Z])(?=.*[0-9])[a-zA-Z0-9]{5,15}$

DEMO

【讨论】:

  • 当一个答案解决了您的问题时,您应该点击它旁边的复选标记来接受它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多