fork download
  1. <?php
  2.  
  3. // your code goes here
  4.  
  5. $text = "Злой анчоус";
  6. $matches = array();
  7.  
  8. $syntaxErr = array(
  9. 'regexp' => '/([а-яА-ЯеЁ]*)([,!?:]\\S)([а-яА-ЯеЁ]*)/ui',
  10. 'message' => "~Отсутствует пробел после знака препинания"
  11. ),
  12.  
  13. 'regexp' => '/([а-яА-ЯеЁ ]*)([Жж]ы|[Шш]ы)([а-яА-ЯеЁ ]*)/u',
  14. 'message' => "~В тексте обнаружено нарушение правила Жи - ши с буквой ы"
  15. ),
  16.  
  17. 'regexp' => '/([а-яА-ЯеЁ]* *)(координально|сдесь|зделал|зделаю|зделан)( *[а-яА-ЯеЁ]*)/ui',
  18. 'message' => "~В тексте обнаружено слово «координально» или «сдесь», «зделал», «зделаю», «зделан»"
  19. ),
  20.  
  21. 'regexp' => '/([а-яА-ЯеЁ]* *)( но| а)( *[а-яА-ЯеЁ]*)/ui',
  22. 'message' => "~В тексте обнаружены слова «а» или «но» без запятой перед ними"
  23. )
  24. );
  25.  
  26. for ($i = 0; $i < count($syntaxErr); $i++){
  27. if(preg_match_all($syntaxErr[$i][regexp],$text,$matches)){
  28. echo $syntaxErr[$i][message] . "\n";
  29. //var_dump($matches);
  30. for ($j = 0; $j < count($matches[0]); $j++) echo $matches[0][$j] . "\n";
  31.  
  32.  
  33. }
  34. }
  35.  
  36.  
Success #stdin #stdout #stderr 0.02s 24448KB
stdin
Standard input is empty
stdout
~В тексте обнаружены слова «а» или «но» без запятой перед ними
Злой анчоус
stderr
PHP Notice:  Use of undefined constant regexp - assumed 'regexp' in /home/xL6Qnq/prog.php on line 31
PHP Notice:  Use of undefined constant regexp - assumed 'regexp' in /home/xL6Qnq/prog.php on line 31
PHP Notice:  Use of undefined constant regexp - assumed 'regexp' in /home/xL6Qnq/prog.php on line 31
PHP Notice:  Use of undefined constant regexp - assumed 'regexp' in /home/xL6Qnq/prog.php on line 31
PHP Notice:  Use of undefined constant message - assumed 'message' in /home/xL6Qnq/prog.php on line 32