$re = '/(\w+:\/\/[\w\.]+?\/([\w\.]+?)\/([\w\.]+?))\s/m';
$str = '1. https://github.com/ymcatwincities/openy_block_modal - Implements a simple block with a body and title that will be used to display modal windows.
1. https://github.com/ymcatwincities/openy_memberships - Membership Framework for OpenY and Drupal.
1. https://github.com/ymcatwincities/openy_prgf_sidebar_menu - SideBar menu for referencing menu blocks and using in SideBars across different pages.
1. https://packagist.org/packages/openy/openy_loc_finder - Extended Location Finder
1. https://github.com/Open-Y-subprojects/reqclique_gxp_sync - Reqclique Group Exercise Sync
1. https://github.com/open-y-subprojects/virtual_y_signaling_server - Signalling server for Virtual Y';
$subst = "[$2/$3]($1) ";
$result = preg_replace($re, $subst, $str);
echo "The result of the substitution is ".$result;
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php