Laravelにはdecimal
の検証がないため、0 - 99.99
の数値を検証するためにregex
または他の検証方法が必要です。
私が試してみました
required|regex:^\d{0,2}(\.\d{1,2})?$/
required|regex:[1-9]\d?(\.\d\d?)?|0\.[1-9]\d?||0\.0[1-9]
required|regex:/[1-9]\d?(\.\d\d?)?|0\.[1-9]\d?||0\.0[1-9]/
required|regex:/[\d]{2}.[\d]{2}/
required|regex:/[\d]{0-2}.[\d]{0,2}/
0.05
またはpreg_match
の不明な修飾子を入力しようとすると、「無効な形式」が表示されます。
regex
の小数を検証するために必要なlaravel
の助けをいただければ幸いです(小数の前後にオプションの値があります)
Laravel between
検証ルールは実際には非常に強力であり、小数値も処理できます。したがって、正規表現を使用する必要はありません。
'required|between:0,99.99'
ルール間のlaravel(5?)は常に小数を解析する必要があります。正しく検証するには数値を追加する必要があります
'required|numeric|between:0,99.99',
これは、2つの10進精度を許可する数値で機能します。
function rules(){
return [
'field_name'=> array('regex:/^(?:d*.d{1,2}|d+)$/','min:1','max:10')
];
}