<?php
$text = <<<END
жизнь прекрасна, но удивительна.
END;
$check1 = "!([\w\ \,]){10}(\,|\.)(\w)([\w\ \,]){10}!iu";
$check2 = "!([\w\ \,]){10}(ж|ш)ы([\w\ \,\(]){7}!iu";
$check3 = "!([\w\ \,]){10}расказ([\w\ \,\(]){7}!iu";
$check4 = "!([\w\ \,]){10}\b(но|а)\b([\w\ \,]){10}!iu";
$announce1 = "В этом месте пропущен пробел после запятой или точки: ";
$announce2 = "ЖИ\ШИ пиши с И:";
$announce3 = "РАССКАЗ пишется с двумя СС:";
$announce4 = "Перед союзами А и НО всегда ставится запятая:";
function detectErrors($text, $check, $announce) {
foreach ($i[0] as $key => $asd) {
echo "$announce *$asd*\n";
}
}
detectErrors($text, $check1, $announce1);
detectErrors($text, $check2, $announce2);
detectErrors($text, $check3, $announce3);
detectErrors($text, $check4, $announce4);
?>
PD9waHAKIAplcnJvcl9yZXBvcnRpbmcoLTEpOwptYl9pbnRlcm5hbF9lbmNvZGluZygndXRmLTgnKTsKIAokdGV4dCA9IDw8PEVORArQttC40LfQvdGMINC/0YDQtdC60YDQsNGB0L3QsCwg0L3QviDRg9C00LjQstC40YLQtdC70YzQvdCwLgpFTkQ7CiAKJGNoZWNrMSA9ICIhKFtcd1wgXCxdKXsxMH0oXCx8XC4pKFx3KShbXHdcIFwsXSl7MTB9IWl1IjsKJGNoZWNrMiA9ICIhKFtcd1wgXCxdKXsxMH0o0LZ80Ygp0YsoW1x3XCBcLFwoXSl7N30haXUiOwokY2hlY2szID0gIiEoW1x3XCBcLF0pezEwfdGA0LDRgdC60LDQtyhbXHdcIFwsXChdKXs3fSFpdSI7CiRjaGVjazQgPSAiIShbXHdcIFwsXSl7MTB9XGIo0L3QvnzQsClcYihbXHdcIFwsXSl7MTB9IWl1IjsKJGFubm91bmNlMSA9ICLQkiDRjdGC0L7QvCDQvNC10YHRgtC1INC/0YDQvtC/0YPRidC10L0g0L/RgNC+0LHQtdC7INC/0L7RgdC70LUg0LfQsNC/0Y/RgtC+0Lkg0LjQu9C4INGC0L7Rh9C60Lg6ICI7CiRhbm5vdW5jZTIgPSAi0JbQmFzQqNCYINC/0LjRiNC4INGBINCYOiI7CiRhbm5vdW5jZTMgPSAi0KDQkNCh0KHQmtCQ0Jcg0L/QuNGI0LXRgtGB0Y8g0YEg0LTQstGD0LzRjyDQodChOiI7CiRhbm5vdW5jZTQgPSAi0J/QtdGA0LXQtCDRgdC+0Y7Qt9Cw0LzQuCDQkCDQuCDQndCeINCy0YHQtdCz0LTQsCDRgdGC0LDQstC40YLRgdGPINC30LDQv9GP0YLQsNGPOiI7CgoJZnVuY3Rpb24gZGV0ZWN0RXJyb3JzKCR0ZXh0LCAkY2hlY2ssICRhbm5vdW5jZSkgewoJCQoJCSRpID0gYXJyYXkoKTsKCQlwcmVnX21hdGNoX2FsbCgkY2hlY2ssICR0ZXh0LCAkaSk7CgkJCgkJZm9yZWFjaCAoJGlbMF0gYXMgJGtleSA9PiAkYXNkKSB7CgkJCWVjaG8gIiRhbm5vdW5jZSAqJGFzZCpcbiI7CgkJfQoJfQoKCmRldGVjdEVycm9ycygkdGV4dCwgJGNoZWNrMSwgJGFubm91bmNlMSk7CmRldGVjdEVycm9ycygkdGV4dCwgJGNoZWNrMiwgJGFubm91bmNlMik7CmRldGVjdEVycm9ycygkdGV4dCwgJGNoZWNrMywgJGFubm91bmNlMyk7CmRldGVjdEVycm9ycygkdGV4dCwgJGNoZWNrNCwgJGFubm91bmNlNCk7CiAKPz4K