3v4l.org

run code in 300+ PHP versions simultaneously
<?php $string = <<<DATA {start} SubPattern1 {end} {start} SubPattern2 {end} {start} {start}SubPattern3{end} {end} DATA; preg_match_all('/{start}((?:(?:(?!{(?:start|end)}).)+|(?R))*){end}/', $string, $result); print_r($result);

preferences:
158.48 ms | 405 KiB | 5 Q