fork download
  1. <?php
  2.  
  3. $text = " ну что. не смотрел еще black mesa.я собирался скачать , но все как-то, некогда было.";
  4. // Для тестов
  5. //$text = "roses are red,and violets are blue.whatever you do i'll keep it for you.";
  6. // $text = "привет.есть 2 функции,preg_split и explode ,не понимаю,в чем между ними разница.";
  7.  
  8. /* Делает первую букву в строке заглавной */
  9. function makeFirstLetterUppercase($text) {
  10. $regexp = "/[.!?]/u";
  11. $text = preg_split($regexp, $text, 0, PREG_SPLIT_NO_EMPTY);
  12. $length = count($text);
  13. for ($i = 0; $i < $length; $i++) {
  14. $text[$i] = trim($text[$i]);
  15. $first = mb_strtoupper(mb_substr($text[$i], 0, 1));
  16. $last = mb_substr($text[$i], 1);
  17. $text[$i] = $first . $last . ".";
  18. }
  19. return implode(" ", $text);
  20. }
  21.  
  22.  
  23. /* исправляет текст */
  24. function fixText($text) {
  25. $text = preg_replace("/[\\s]+,|,[\\s]+|([,])/u", ", ", $text);
  26. return makeFirstLetterUppercase($text);
  27. }
  28.  
  29. $result = fixText($text);
  30. echo "{$result}\n";
Success #stdin #stdout 0.02s 52432KB
stdin
Standard input is empty
stdout
Ну что. Не смотрел еще black mesa. Я собирался скачать,       но все как-то, некогда было.