3v4l.org

run code in 500+ PHP versions simultaneously
<?php $text = 'This {is {{Par}m1}} plus {{Par{m3a{{Parm3b}}}} a}nd {{Parm4a||{{Par}m4b||{{Parm4c||{{Parm4d||Parm}}}}}}}}.'; $res = preg_split('~({{(?:(?!{{|}}).|(?1))*}})~', $text, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY); print_r($res);
Output for 8.0.1 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
Array ( [0] => This {is [1] => {{Par}m1}} [2] => plus [3] => {{Par{m3a{{Parm3b}}}} [4] => a}nd [5] => {{Parm4a||{{Par}m4b||{{Parm4c||{{Parm4d||Parm}}}}}}}} [6] => . )

preferences:
73.63 ms | 1131 KiB | 4 Q