<?php
    /*
    «Grammar Nazi». Напиши скрипт, проверяющий текст на наличие злостных ошибок:

    нет пробела после запятой, точки с запятой, восклицательного знака, вопросительного знака, двоеточия
    «жи» или «ши» написано с буквой ы
    в тексте есть слово «координально» или «сдесь», «зделал», «зделаю», «зделан»
    в тексте есть слова «а» или «но» без запятой перед ними.
    (можешь добавить еще несколько правил, если хорошо знаешь русский язык)

    В случае обнаружения ошибки скрипт должен писать сообщение об этом и выводить кусок текста с ошибкой (чтобы было понятно, что не так).
    */

    $matches = array();
    $regExp = '/(сдесь|координально|здела[люн]|[жш]ы|[чщ]я|[,!?;:][^ ]|[^,][ ](а|но)[ ])/u';
    $string = 'Хорошо??';

    echo "Исходный текст: $string\n";
    echo preg_match($regExp, $string, $matches) ? "Ошибка в фрагменте: '{$matches[1]}'!\n" : "Всё правильно!\n";
?>