$re = '/\((.*)\)/';
$str = '1. (\'1KtxNawkosV1H5jzUzW_$1\'),#38,\'2ndLevel\', \'2a\',#251524,#251773,#328411,.PHYSICAL.,.EXTERNAL.
2. \'1KtxNawkosV1H5jzUzW_$1\',#38,\'2ndLevel\', \'2a\',#251524,#251773,(#328411,.PHYSICAL.,.EXTERNAL.)
3. (\'1KtxNawkos(asd)V1H5jzU)zW_$1\', (\'asd\', #23331), #21)<-- ###should end here###,#38,\'2ndLevel\', \'2a\',#251524,#251773,#328411,.PHYSIaCAL.,.EXTERNAL., \')\'
4. #38,\'2ndLevel\',(\'1KtxNawkos(asd)V1H5jzU)zW_$1\') \'2a\',#251524,#251773,#328411,.PHYSICAL.,.EXTERNAL.
';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php