Hello @kartik,
You can pass the route parameters as second argument to route():
return \Redirect::route('regions', [$id])->with('message', 'State saved correctly!!!');
If it's only one you also don't need to write it as array:
return \Redirect::route('regions', $id)->with('message', 'State saved correctly!!!');
In case your route has more parameters, or if it has only one, but you want to clearly specify which parameter has each value (for readability purposes), you can always do this:
return \Redirect::route('regions', ['id'=>$id,'OTHER_PARAM'=>'XXX',...])->with('message', 'State saved correctly!!!');