Laravel Validation not_regex pattern Example

Laravel 8 , Laravel 7 , Laravel , Laravel 6

Nicesnippets

2402

06-01-2021


Hi Guys,

Today,I will explain how to validation not_regex pattern in laravel. you can easy to use validation not_regex in laravel we are show the not_regex pattern validation. we will field under validation not_regex pattern string in laravel.

The field under validation must not match the given regular expression.

Internally, this rule uses the PHP preg_match function. The pattern specified should obey the same formatting required by preg_match and thus also include valid delimiters. For example: 'project_name' => 'not_regex:/(^([a-zA-z]+)(\d+)?$)/u'.

In this example,you can simply apply to validation to not_regex pattern Validation in laravel. The field under validation must have a not_regex pattern value.

here the example of laravel validation allow only not_regex .

let see below the solution.

solution


$request->validate([

'project_name' => 'not_regex:/(^([a-zA-z]+)(\d+)?$)/u',

]);

Valid values for project name:

123nicesnippets

nicesnippets 123

nice snippets

nice snippets123

Invalid values for project name:

nicesnippets123

nicesnippets

nicesnippets

Route : routes/web.php

Route::get('blogs','BlogController@index');

Route::post('blogs','BlogController@store')->name('blogs.store');

Controller : app/Http/Controllers/BlogController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use Illuminate\Notifications\Notification;

class BlogController extends Controller

{

/**

* Display a listing of the resource.

*

* @return \Illuminate\Http\Response

*/

public function index()

{

return view('index');

}

/**

* Store a newly created resource in storage.

*

* @param \Illuminate\Http\Request $request

* @return \Illuminate\Http\Response

*/

public function store(Request $request)

{

$request->validate([

"project_name" => "not_regex:/(^([a-zA-z]+)(\d+)?$)/u"

]);

return redirect()->back();

}

}

View : resources/views/index.php

<!DOCTYPE html>

<html>

<head>

<title>From</title>

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha512-MoRNloxbStBcD8z3M/2BmnT+rg4IsMxPkXaGh2zD6LGNNFE80W3onsAhRcMAMrSoyWL9xD7Ert0men7vR8LUZg==" crossorigin="anonymous" />

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>

</head>

<body class="bg-dark">

<div class="container">

<div class="row">

<div class="col-md-6 offset-3">

<div class="card mt-5">

<div class="card-header">

<div class="row">

<div class="col-md-9">

Laravel Validation not_regex Pattern Example

</div>

<div class="col-md-3 text-right">

<a href="{{ route('form') }}" class="btn btn-sm btn-outline-primary">Back</a>

</div>

</div>

</div>

<div class="card-body">

@if (count($errors) > 0)

<div class="row">

<div class="col-md-12">

<div class="alert alert-danger alert-dismissible">

<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>

@foreach($errors->all() as $error)

{{ $error }} <br>

@endforeach

</div>

</div>

</div>

@endif

<form action="{{ route('from.store') }}" method="post">

@csrf

<div class="row">

<div class="col-md-12">

<div class="form-group">

<label>Project Name:</label>

<input name="project_name" type="text" class="form-control">

</div>

</div>

</div>

<div class="row">

<div class="col-md-12">

<button class="btn btn-block btn-success">Submit</button>

</div>

</div>

</form>

</div>

</div>

</div>

</div>

</div>

</body>

</html>

It will help you...