正则表达式,用于验证字符串是否仅包含字母和数字并且具有最大长度

时间:2017-10-30 14:37:46

标签: regex

当我有这个表达式^\d{3}$时,如果我输入123,那么它将返回1 match。但是,如果我输入1234,那么它会返回给我no match,这很好。

现在,我有另一个表达

^[0-9a-zA-Z]{1,5}

但我在https://regexr.com/上对此进行了测试,但我发现它的工作方式与我的预期不同。

如果我输入helloworld作为输入示例,我不希望它选择任何匹配,但在这种情况下,它会显示1 match并突出显示单词hello。如何修改表达式,以便此输入将返回“不匹配”

由于

2 个答案:

答案 0 :(得分:1)

如果您想完全匹配,则需要添加最后一个$

^[0-9a-zA-Z]{1,5}$


^ ==>开始吧
[0-9a-zA-Z] ==>字符列表
{1,5} ==>发生在1到5之间
$ ==>

完成

答案 1 :(得分:1)

您需要在要匹配的字符末尾添加$。 ^$断言1,2,3,4或5个字符也包含匹配的开头和结尾。

^[0-9a-zA-Z]{1,5}$