【问题标题】:Regex multiple lookaheads not working when both are triggered触发两者时,正则表达式多个前瞻不起作用
【发布时间】:2022-07-08 16:46:45
【问题描述】:

我正在使用 Laravel 创建用户名字段,并且正在使用 RegEx 设置格式规则。
规则是:不仅数字 **AND OR** 下划线 + 通常只允许数字、字符和下划线。

现在我想出了这个 RegEx 语法:
(?!^\d+$)^.[a-zA-Z0-9_]+$

这工作正常,直到我输入以下内容:
____2348734

如何防止这种情况发生?提前致谢!

【问题讨论】:

    标签: regex regex-lookarounds


    【解决方案1】:

    你可以使用任何一个

    ^(?![\d_]+$)[a-zA-Z0-9_]+$
    ^(?![\d_]+$)\w+$
    

    请参阅regex demo

    【讨论】:

      猜你喜欢
      • 2011-07-21
      • 1970-01-01
      • 2017-04-22
      • 1970-01-01
      • 2014-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多