PHP preg_replace_callback with more than one regular expression
===

Hello guys i have the follow code on php

    	return preg_replace_callback("#\{gallery: '(.+?)'\}#i", 
		  function($i)
		  { 
		    $oGallery = new Gallery( $i[1] ) ; $oGallery->PublicSide();
		  }, $string);

Now i want to add the following to it: 

Say that that i want to allow the user to choose if he wants to add directories to the gallery so i do: `"#\{gallery: '(.+?)' dir: '(.+?)')\}#i"`

so the user has the potion to do: {gallery: 'folder'} or  {gallery: 'folder' dir: '1'}

how would i go about doing this in terms of regular expressions so the replacement takes place even if the directory option isnt there? thanks in advance!