Здравствуйте. Паршу сайт и через simple_html_dom.php получаю нужные мне параграфы, потом перебираю массив. Не могу понять, почему не работает preg_match, если во второй параметр передавать переменную. Но если передать просто содержимое этой переменной, то все сработает. 
И тут все работает: 
https://regex101.com/r/ByQfun/7
Результат работы на скрине.
foreach ($paragraphs as $paragraph) {
	$text = $paragraph->plaintext;
	var_dump($text);
	preg_match('/^(?<word>.*?)(?:\s(?<trans>\[.*?\]))?\s—\s(?<translate>.*?)$/u', trim($text), $matches);
	preg_match('/^(?<word>.*?)(?:\s(?<trans>\[.*?\]))?\s—\s(?<translate>.*?)$/u', trim("ab- — , словах, с общим значением удаления"), $match);
	echo '<pre>';
	var_dump($matches);
	var_dump($match);
	echo '</pre>';
	break;
}
