$re = '/(\d+)\s{2,}([.a-zA-Z,\'À-úÀ-ÿ()?\-\/\d]+(?:\s?[.a-zA-Z,\'À-úÀ-ÿ()?\-\/\d])*)(?|\s{2,}((?:[.a-zA-Z,\'À-úÀ-ÿ()?\-\/\d]+(?:\s?[.a-zA-Z,\'À-úÀ-ÿ()?\-\/\d])*))|())\s{2,}(I|PF|MA)\s{2,}(I|PF|PL|LI|MA|CV|MJ)\s{2,}(\w+)\s{2,}(\d+,\d{4})/';
$str = '`2236 ARGEMIRO PATROCINIO ARGEMIRO I I UBC 3,8462
1150721 ZACHARY F CONDON ZACH CONDON I I FINTAGE 8,3333
50300 COMERCIAL FONOGRAFICA RGE LTDA. PF LI ABRAMUS 25,0000`
';
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