我想验证用户名这样一种方式,它不应该接受像:-),;-)等表情符号..但它应该接受带有字母和数字的特殊字符...艰难的...... < / p>
目前我申请了
$validator = Validator::make(Input::all(),array('username'=>'required|max:20|min:3');
提前致谢
答案 0 :(得分:2)
这样的事情:
$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/')
)
);
显然,你需要完成你想要禁止的其他发射器。
您可以使用.
代替[ -~]
扩展允许的字符,将字符串限制为ascii字符。