Laravel验证,最小字符长度和1个数字



我想验证我的密码输入是否至少包含十个字符,并且只有一个数字。但当我在我的控制器中尝试这个时,它没有起作用。那么我该怎么做呢?

$request->validate(['password' => 'required|min:10|numeric|max:9']);

此正则表达式将验证您的密码。密码必须仅包含一个数字,并且min属性验证密码的最小长度。

$request->validate(['password'=>'required|min:10|regex:/^[^dn]*d[^dn]*$/']);

您可以尝试下面的digitals_between->

$request->validate(['password' => 'required|min:10|digits_between:2,5]);

您可以组合regex和min验证:

$request->validate([
'password' => [ 'required', 'min:10', 'regex:/^[a-z]*d[a-z]*$/i' ];
]);

这需要一个最小长度为10且恰好为1的数字。如果你允许其他字符,你可以把它们放在[a-z]组中

使用至少需要一个数字的Password规则对象。

Password::min(10)->numbers();

这是您正在寻找的验证。

$request->validate([
'password' => [
'required',
'string',
Password::min(10)
->numbers()
]
]);

此正则表达式将为您提供最强的密码。密码必须至少包含一个大写字母、小写字母和至少一个数字

'password' => ['required', 'string', 'min:10', 'regex:/(?=.*[a-z])(?=.*[A-Z])(?=.*d)[a-zA-Zd]{10,}/']

相关内容

  • 没有找到相关文章

最新更新