代码之家  ›  专栏  ›  技术社区  ›  Priyank

排除特殊字符的正则表达式

  •  0
  • Priyank  · 技术社区  · 15 年前

    • 最少8个字符,最多16个字符
    • 只能是字母数字

    /^(?=.*\d)(?=.*([a-z]|[A-Z])).{8,16}$/
    

    提前谢谢。

    1 回复  |  直到 15 年前
        1
  •  3
  •   Amarghosh    15 年前
    /^(?=.*\d)(?=.*[a-zA-Z])[0-9a-zA-Z]{8,16}$/
    

    你的正则表达式的最后一部分, .{8,16}

    向前看只确保至少有一个数字和一个字母-它没有说明任何其他字符。另外,请注意,我已经更新了字母匹配部分—您不需要两个字符类。

    在密码中不允许特殊字符是完全违反直觉的。你为什么这么做?