/*Если ты сделал задачу про Grammar Nazi, сделай скрипт, которы вместо сообщения об ошибках будет молча их исправлять.*/
<?php
//mb_internal_encoding('utf-8');
$text = "Текст с кучей плохих оШыбок. Сдесь я координально зделал ошыбки, а не , но а но жы поставил запятую , и ? ! , пробел ... перед ... ??? ней.";
echo "Original: " . $text . "\n";
$regex = [
    "/([жш])ы/ui" => "$1и",
    "/координально/ui" => "кардинально",
    "/з(дела)([лню])/ui" => "с$1$2",
    "/сдесь/ui" => "здесь",
    "/\s+([.?!:,])/u" => "$1",
    "/[,]?\s+(а)/ui" => ", $1",
    "/[,]?\s+(но)/ui" => ", $1",
    "/([.?!:,]+)\s+/u" => "$1 "
];
$text = preg_replace(array_keys($regex), array_values($regex), $text);
/*foreach ($regex as $reg => $replacement){
    $text = preg_replace($reg, $replacement, $text);
}*/
echo "Fixed: " . $text . "\n";
?>