如何构建以[a-z] [A-Z]开头并以数字结尾的正则表达式

时间:2018-07-15 09:20:13

标签: regex

前面是字母[a-zA-Z]必需),后面是数字(可选)。总长度>=1 && <= 80

应符合以下条件:

a
a1
ab12
aAc
aAd12

应符合以下条件:

1
1a

2 个答案:

答案 0 :(得分:4)

为了将整个长度限制为80:

^(?i)(?=.{1,80}$)[a-z]+\d*$

说明:

^               : beginning of line
  (?i)          : case insensitive
  (?=.{1,80}$)  : positive lookahead, make sure we have 1 upto 80 characters
  [a-z]+        : 1 or more letters
  \d*           : 0 or more digits
$               : end of line

答案 1 :(得分:1)

您可以使用锚点来声明行的开始^和结束$

要一次或多次匹配小写或大写字符,可以使用[a-zA-Z]+,然后使用量词\d{0,80}匹配数字0-80

^[a-zA-Z]+\d{0,80}$

编辑:

如果总长度应为1 -80,则可以使用正数lookahead (?=断言直到行[a-zA-Z0-9]{1,80}为止的是$ < / p>

然后将一个或多个小写或大写字符[a-zA-Z]+匹配一次,然后将零个或多个匹配数字[0-9]*匹配。

^(?=[a-zA-Z0-9]{1,80}$)[a-zA-Z]+[0-9]*$