fork(3) download
  1. <?php
  2.  
  3.  
  4. $text = "Пocтaвкa мяco гoвядины, бecкостнoe для нужд государственного бюджетного учреждения здравоохранения Республики Башкортостан Инфекционная клиническая больница № 4 города Уфа";
  5. $misprints = array();
  6. $regexp = '/(\\w*[etopahkxcbmy]+\\w*)/ui';
  7.  
  8. preg_match_all($regexp, $text, $misprints);
  9.  
  10. for ($i = 0; $i < count($misprints[0]); $i++){
  11. echo "Опечатка в слове {$misprints[0][$i]}: ", preg_replace('/(а-яЁ)*([etopahkxcbmy])(\\w*)/ui', '$1[$2]$3', $misprints[0][$i]), "\n";
  12. }
  13.  
  14. $regexp = '/[a-z]/i';
  15.  
  16. if (preg_match($regexp, $text)){
  17. $regexp = array('/e/', '/E/', '/T/', '/y/', '/o/', '/O/', '/p/', '/P/', '/a/', '/A/', '/H/', '/K/', '/x/', '/X/', '/c/', '/C/', '/B/', '/M/');
  18. $replacement = array('е', 'Е', 'Т', 'у', 'о', 'О', 'р', 'Р', 'а', 'А', 'Н', 'К', 'х', 'Х', 'с', 'С', 'В', 'М');
  19. $text = preg_replace($regexp, $replacement, $text);
  20.  
  21. echo "ИСПРАВЛЕННЫЙ ТЕКСТ\n", $text;
  22. } else {
  23. echo "Текст правильный";
  24. }
Success #stdin #stdout 0.01s 82944KB
stdin
Standard input is empty
stdout
Опечатка в слове Пocтaвкa: П[o]cтaвкa
Опечатка в слове мяco: мя[c]o
Опечатка в слове гoвядины: г[o]вядины
Опечатка в слове бecкостнoe: б[e]cкостнoe
ИСПРАВЛЕННЫЙ ТЕКСТ
Поставка мясо говядины, бескостное для нужд государственного бюджетного учреждения здравоохранения Республики Башкортостан Инфекционная клиническая больница № 4 города Уфа