【问题标题】:Laravel - need Regex to validate username, which prevents emoticon but allows special charactersLaravel - 需要正则表达式来验证用户名,这可以防止表情符号但允许特殊字符
【发布时间】:2014-12-03 18:43:30
【问题描述】:

我想以这样的方式验证用户名,它不应该接受 :-)、;-) 等表情符号,但它应该接受带有字母和数字的特殊字符......很难......

目前我已经申请了

$validator = Validator::make(Input::all(),array('username'=>'required|max:20|min:3');

提前致谢

【问题讨论】:

    标签: php regex laravel


    【解决方案1】:

    类似这样的:

    $validator = Validator::make(
        Input::all(),
        array('username'=> array('required',
                                 'max:20',
                                 'min:3',
                                 'Regex:/\A(?!.*[:;]-\))[ -~]+\z/')
        )
    );
    

    请注意,您可以像这样缩短要求:

    $validator = Validator::make(
        Input::all(),
        array('username'=> array('required',
                                 'Regex:/\A(?!.*[:;]-\))[ -~]{3,20}\z/')
        )
    );
    

    显然,您需要使用要禁止的其他 Emiticons 来完成。

    您可以使用 . 而不是将字符串限制为 ascii 字符的 [ -~] 来扩展允许的字符。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-25
      • 2015-10-06
      • 2014-08-18
      • 1970-01-01
      • 2015-01-05
      相关资源
      最近更新 更多