fork(2) download
  1. <?php
  2.  
  3.  
  4. $text1 = "ну что. не смотрел еще black mesa.я собирался скачать ,но все как-то некогда было.";
  5. // Для тестов
  6. $text2 = "roses are red,and violets are blue.whatever you do i'll keep it for you.";
  7. $text3 = 'привет.есть 2 функции,preg_split и explode ,не понимаю,в чем между ними разница.';
  8.  
  9. /* Делает первую букву в строке заглавной */
  10. function makeFirstLetterUppercase($text) {
  11. $text = preg_replace_callback('/([.]\\s|\\A)([а-яёa-z])/u',
  12. function($matches){
  13. $firstLetter = mb_strtoupper($matches[2]);
  14. $replacement = $matches[1].$firstLetter;
  15. return $replacement;
  16. },
  17. $text);
  18. return $text;
  19. }
  20.  
  21. function fixSpaces($text){
  22. $text = preg_replace('/([а-яёa-z]+)\\s*([.,;:!?])\\s*([а-яёa-z]+)/ui', '$1$2 $3', $text);
  23. return $text;
  24. }
  25.  
  26. /* исправляет текст */
  27. function fixText($text) {
  28. $fixedText = fixSpaces($text);
  29. $fixedText = makeFirstLetterUppercase($fixedText);
  30. return $fixedText;
  31. }
  32.  
  33. $results[] = fixText($text1);
  34. $results[] = fixText($text2);
  35. $results[] = fixText($text3);
  36.  
  37. foreach ($results as $result){
  38. echo "{$result}\n";
  39. }
  40.  
Success #stdin #stdout 0.02s 52432KB
stdin
Standard input is empty
stdout
Ну что. Не смотрел еще black mesa. Я собирался скачать, но все как-то некогда было.
Roses are red, and violets are blue. Whatever you do i'll keep it for you.
Привет. Есть 2 функции, preg_split и explode, не понимаю, в чем между ними разница.