正则表达式匹配不等于的字符数

regexp to match numbre of chars not equal to

有没有办法编写正则表达式来匹配除 N 以外的任意数量的字符?

喜欢/^\d{ 3}$/ -

11 - 好的

111 - 不行

1111 - 好的

您可以通过交替使用此正则表达式:

^(?:\d{1,2}|\d{4,})?$

RegEx Demo

正则表达式分解:

  • ^ - 开始
  • (?: - 启动非捕获组
    • \d{1,2} - 匹配 1 或 2 个数字
    • | - 或者
    • \d{4,}) - 匹配 4 个以上的数字
  • )结束非捕获组
  • $ - 开始