fork download
  1. <?php
  2.  
  3.  
  4. $text = "ну что. не смотрел еще black mesa.я собирался скачать ,но все как-то некогда было.";
  5. // Для тестов
  6. $text1 = "roses are red,and violets are blue.whatever you do i'll keep it for you.";
  7. $text2 = 'привет.есть 2 функции,preg_split и explode ,не понимаю,в чем между ними разница.';
  8. function makeFirstLetterUppercase($text) {
  9. $sent = preg_split("/\\./", $text, 0, PREG_SPLIT_NO_EMPTY);
  10. foreach ($sent as $number => $sentence) {
  11. if (mb_substr(0, 1, $sentence) != " ") {
  12. $sentence = " ". $sentence;
  13. }
  14. var_dump($sentence);
  15. $newSentence = preg_replace("/\\s?([,!?])\\s?/u", '$1 ', $sentence); //знаки препинания
  16. var_dump($newSentence);
  17. $newSentence = preg_replace("/\\s{2,}/u", ' ', $sentence); //повторяющийся пробел
  18. $firstLeter = mb_strtoupper(mb_substr($newSentence, 1,1));
  19. $newSentence = preg_replace("/^ (\\w)/u", " {$firstLeter}", $newSentence);
  20. $newText = $newText . $newSentence. ".";
  21. }
  22. return $newText;
  23. }
  24. $newText = makeFirstLetterUppercase($text);
  25. echo "{$newText}\n";
  26. $newText = makeFirstLetterUppercase($text1);
  27. echo "{$newText}\n";
  28. $newText = makeFirstLetterUppercase($text2);
  29. echo "{$newText}\n";
Success #stdin #stdout #stderr 0.02s 52432KB
stdin
Standard input is empty
stdout
string(12) " ну что"
string(12) " ну что"
string(44) "       не смотрел еще black mesa"
string(44) "       не смотрел еще black mesa"
string(87) " я собирался скачать  ,но все как-то некогда было"
string(87) " я собирался скачать , но все как-то некогда было"
 Ну что. Не смотрел еще black mesa. Я собирался скачать ,но все как-то некогда было.
string(35) " roses are red,and violets are blue"
string(36) " roses are red, and violets are blue"
string(37) " whatever you do i'll keep it for you"
string(37) " whatever you do i'll keep it for you"
 Roses are red,and violets are blue. Whatever you do i'll keep it for you.
string(13) " привет"
string(13) " привет"
string(114) " есть 2 функции,preg_split и explode ,не понимаю,в чем между ними разница"
string(116) " есть 2 функции, preg_split и explode, не понимаю, в чем между ними разница"
 Привет. Есть 2 функции,preg_split и explode ,не понимаю,в чем между ними разница.
stderr
PHP Notice:  Undefined variable: newText in /home/PLkmQm/prog.php on line 22
PHP Notice:  Undefined variable: newText in /home/PLkmQm/prog.php on line 22
PHP Notice:  Undefined variable: newText in /home/PLkmQm/prog.php on line 22