3v4l.org

run code in 300+ PHP versions simultaneously
<?php $value = "[Code]< AA-1>[WST-2587 ] hello world WST-2589 IC-111"; print($value); print("\n"); $trimPattern = '/^[”’"\'(<]*@?(.+?)[.”’"\'\,!?:;)>]*$/'; print($trimPattern); print("\n"); $projects = array('AA', 'IC', 'WST'); $calloutPattern = "/^(?:" . implode('|', $projects) . ")-[0-9]+$/"; print($calloutPattern); print("\n"); $words = preg_split('/(\s+)/', $value); print "\nWords:\n"; foreach ($words as $word) { print($word); print("\n"); } preg_match_all('/[(<\[]\s*((' . implode('|', $projects) . ')-[0-9]+)\s*[\]>)]/', $value, $matches); print "\nMatches:\n"; foreach ($matches[1] as $match) { print($match); print("\n"); } $words = array_merge($words, $matches[1]); //$words = $words + $matches[1]; print "\nMerged Words:\n"; foreach ($words as $word) { print($word); print("\n"); }
Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.24 - 5.5.35, 5.6.7 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
[Code]< AA-1>[WST-2587 ] hello world WST-2589 IC-111 /^[”’"'(<]*@?(.+?)[.”’"'\,!?:;)>]*$/ /^(?:AA|IC|WST)-[0-9]+$/ Words: [Code]< AA-1>[WST-2587 ] hello world WST-2589 IC-111 Matches: AA-1 WST-2587 Merged Words: [Code]< AA-1>[WST-2587 ] hello world WST-2589 IC-111 AA-1 WST-2587

preferences:
243.49 ms | 406 KiB | 323 Q