3v4l.org

run code in 300+ PHP versions simultaneously
<?php $str = '# (811) (1485) [2756] {29} [555] {15} # (811) (1476) {20} {15} (1485) [196] [2441] # (911) (619) {19} (1476) [2765] [2752] {21}'; foreach (explode("\n", $str) as $str) { $result = array_reduce(explode(" ", $str), function($acc, $curr) { preg_match("/{(?!19|20)\d+}/", $curr) ? $acc['move'][] = $curr : $acc['valid'][] = $curr; return $acc; }, ['valid' => [], 'move' => []]); echo implode(" ", array_merge($result['valid'], array_reverse($result['move']))) . PHP_EOL; }

preferences:
24.29 ms | 409 KiB | 5 Q