2016-05-12 1 views
2

をダッシュ​​:正規表現の検証文字、ドット、私はこの検証を持ってLaravel

'users.first_name' => 'required|min:2|regex:/[A-Za-z. -]/|max:255', 

この検証は、この名前を渡す理由:ジョン[] []

+1

[MCVE]私たちは@lonVasile問題 – Rizier123

+0

を再現することができ、私たちに与えて下さい何'first_name'を許可する必要がありますか? –

+0

任意の文字、点およびダッシュ。 –

答えて

5

誰かコメントには、/[A-Za-z. -]/によって、すべての文字については気にしないが、検証の対象フィールドにその文字のうちの文字数が最小であれば十分だと言っているというこの問題を指摘しました。

あなたはキャレット^$を用いて、入力されたテキストの開始と終了を指定する必要があります文字のみを持っている:

regex:/^[A-Za-z. -]+$/ 
+0

この回答をありがとう。私は、スペース文字を許可するユーザ名マイナスのための同様の要件を持っていたので、私は数字を許可する必要があった。だから、すべてのユーザー名は数字、英字の大文字と小文字、アンダースコア、ドット、ダッシュを持つことができます。これはLaravel 5.4で動作します。最終結果は次のとおりです: '' username '=> [' required '、' regex:/^[0-9A-Za-z] \ -_] + $/'、' max:150 ' ]、 – racl101

1

使用Alpha dash validation

'users.first_name' => 'required|min:2|alpha_dash|max:255', 
+0

*' alpha_dash' - 検証中のフィールドには英数字、ダッシュ、アンダースコアを含めることができます。* - ドットとスペースはどうですか? –

+0

ああ!私の悪い。それを見なかった。ドット。 Btw私はファーストネームにドットが含まれる理由はわかりません。 – Abhishek

+0

父親の頭文字。 –