$re = '/(?=(?=(?<!\w)\w*\(ea\))[\w()]{7,8}(?:\s|$))[\w()]{7,8}/m';
$str = 'bbeabbbbbbb
whafdfadffasdfbb(ea)bbbbbbb
bb(ea)bbbbbbb asdfasd(fr)asdf
saikbb(ea)bh list starting with this
bb(ea)bh list starting with this
line ending with this bb(ea)bh
this is another line with bb(ea)bh that is matched
another line ddfk(ea) in middle';
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