3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $arrayOfString = array( 'customer service[-3] technical support[-3]', 'picture quality[+2]feature[+2]', 'smell[-2]', 'player[+2]', 'player[-3][u]', 'dvd player[-2]', 'player[+2][p]', 'format[+2][u]progressive scan[-2]' ); preg_match_all("/([\w ]+[^[]]*)\[([+-]\d*?)\]/", implode(",", $arrayOfString), $matches); print_r($matches);
Output for 4.3.0 - 7.1.0
Array ( [0] => Array ( [0] => customer service[-3] [1] => technical support[-3] [2] => picture quality[+2] [3] => feature[+2] [4] => smell[-2] [5] => player[+2] [6] => player[-3] [7] => dvd player[-2] [8] => player[+2] [9] => format[+2] [10] => progressive scan[-2] ) [1] => Array ( [0] => customer service [1] => technical support [2] => picture quality [3] => feature [4] => smell [5] => player [6] => player [7] => dvd player [8] => player [9] => format [10] => progressive scan ) [2] => Array ( [0] => -3 [1] => -3 [2] => +2 [3] => +2 [4] => -2 [5] => +2 [6] => -3 [7] => -2 [8] => +2 [9] => +2 [10] => -2 ) )