fork download
  1. <?php
  2.  
  3.  
  4. function grammar($text) {
  5. $rules = array(
  6. '/.{3}?[,.!?:;][^ ].{3}?/ui' => "Нет пробела после знака препинания",
  7. '/.{3}?[жш]ы.{3}?/ui' => "Ж и Ш пишутся с буквой И",
  8. '/.{3}?[^.,!?] (а|но).{3}?/ui' => "Нет знака препинания перед А или НО",
  9. '/.{3}?(сдесь|координально|зделаю).{3}?/ui' => "Неправильно написано слово"
  10. );
  11. foreach ($rules as $regexp => $desc) {
  12. $matches = array();
  13. if (preg_match_all($regexp, $text, $matches)) {
  14. $imp = implode(" и вот тут -", $matches[0]);
  15. echo "{$desc} вот тут - {$imp} \n";
  16. }
  17. }
  18. }
  19. $text = "Алах вилик!а я сука, но не азаза. !Жырная жопа жи. Сдесь .";
  20. $test = grammar($text);
Success #stdin #stdout 0.03s 52480KB
stdin
Standard input is empty
stdout
Нет пробела после знака препинания вот тут - лик!а я  и вот тут -а. !Жырн 
Ж и Ш пишутся с буквой И вот тут - . !Жырна 
Нет знака препинания перед А или НО вот тут - о не азаз