正则表达式任何具有最大长度的字符串

Regex any string with max length

我正在尝试制作一个 mysql-regex SQL,它将找到任何具有最大长度的字符串 - 我可以在 javascrtip、php 等中完成 -但出于某种原因,我可以让它在 mysql

中工作

示例字符串:

  1. a12
  2. a123
  3. a1234
  4. a12345
  5. a123456

所以假设我希望我的正则表达式命中长度为 4 或更短的任何字符串 - 所以在上面的示例中我的正则表达式应该命中 1 和 2。

下面的代码在尝试命中超过特定​​长度的任何字符串时完美运行,但我无法让它与特定长度以下的字符串一起工作。

([a-zA-Z])[0-9a-zA-Z]{20,}

我显然尝试过

([a-zA-Z])[0-9a-zA-Z]{0,6}

但由于某种原因无法正常工作

我想你想要:

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

这匹配一个由字母字符后跟 0 到 3 个字母数字字符组成的字符串。一件重要的事情是匹配整个字符串:这就是锚点 ^(字符串的开头)和 $(字符串的结尾)所做的。