fork download
  1. <?php
  2.  
  3.  
  4. $text = <<<END
  5. жизнь прекрасна, но удивительна.
  6. END;
  7.  
  8. $check1 = "!([\w\ \,]){10}(\,|\.)(\w)([\w\ \,]){10}!iu";
  9. $check2 = "!([\w\ \,]){10}(ж|ш)ы([\w\ \,\(]){7}!iu";
  10. $check3 = "!([\w\ \,]){10}расказ([\w\ \,\(]){7}!iu";
  11. $check4 = "!([\w\ \,]){10}\b(но|а)\b([\w\ \,]){10}!iu";
  12. $announce1 = "В этом месте пропущен пробел после запятой или точки: ";
  13. $announce2 = "ЖИ\ШИ пиши с И:";
  14. $announce3 = "РАССКАЗ пишется с двумя СС:";
  15. $announce4 = "Перед союзами А и НО всегда ставится запятая:";
  16.  
  17. function detectErrors($text, $check, $announce) {
  18.  
  19. $i = array();
  20. preg_match_all($check, $text, $i);
  21.  
  22. foreach ($i[0] as $key => $asd) {
  23. echo "$announce *$asd*\n";
  24. }
  25. }
  26.  
  27.  
  28. detectErrors($text, $check1, $announce1);
  29. detectErrors($text, $check2, $announce2);
  30. detectErrors($text, $check3, $announce3);
  31. detectErrors($text, $check4, $announce4);
  32.  
  33. ?>
  34.  
Success #stdin #stdout 0.02s 52432KB
stdin
Standard input is empty
stdout
Перед союзами А и НО всегда ставится запятая: *рекрасна, но удивитель*