<?php
error_reporting(-1);
mb_internal_encoding('utf-8');
$text = "ну что. не смотрел еще black mesa.я собирался скачать ,но все как-то некогда было.";
// Для тестов
// $text = 'roses are red,and violets are blue.whatever you do i'll keep it for you.';
// $text = 'привет.есть 2 функции,preg_split и explode ,не понимаю,в чем между ними разница.';
/* Делает первую букву в строке заглавной */
function makeFirstLetterUppercase($text) {
$text = preg_split('#[?!.]#u', $text, -1, PREG_SPLIT_NO_EMPTY);
foreach ($text as $key => $letter){
$text[$key] = trim($letter);
$text[$key] = preg_split('//u', $letter, -1, PREG_SPLIT_NO_EMPTY);
$text[$key][0] = mb_strtoupper($text[$key][0]);
$text[$key] = implode("", $text[$key]);echo "$input\n";
}
$text = implode(".",$text);
return $text;
}
/* исправляет текст */
function fixText($text){
$text = makeFirstLetterUppercase($text);
$reg = '#([А-Я]\\.)#u';
$text = preg_replace($reg, "$1 ", $text);
return $text;
}
$result = fixText($text);
echo "{$result}\n";
PD9waHAKCmVycm9yX3JlcG9ydGluZygtMSk7Cm1iX2ludGVybmFsX2VuY29kaW5nKCd1dGYtOCcpOwoKJHRleHQgPSAi0L3RgyDRh9GC0L4uICAgICAg0L3QtSDRgdC80L7RgtGA0LXQuyDQtdGJ0LUgYmxhY2sgbWVzYS7RjyDRgdC+0LHQuNGA0LDQu9GB0Y8g0YHQutCw0YfQsNGC0YwgICzQvdC+INCy0YHQtSDQutCw0Lot0YLQviDQvdC10LrQvtCz0LTQsCDQsdGL0LvQvi4iOwovLyDQlNC70Y8g0YLQtdGB0YLQvtCyCi8vICR0ZXh0ID0gJ3Jvc2VzIGFyZSByZWQsYW5kIHZpb2xldHMgYXJlIGJsdWUud2hhdGV2ZXIgeW91IGRvIGknbGwga2VlcCBpdCBmb3IgeW91Lic7Ci8vICR0ZXh0ID0gJ9C/0YDQuNCy0LXRgi7QtdGB0YLRjCAyINGE0YPQvdC60YbQuNC4LHByZWdfc3BsaXQg0LggZXhwbG9kZSAs0L3QtSDQv9C+0L3QuNC80LDRjizQsiDRh9C10Lwg0LzQtdC20LTRgyDQvdC40LzQuCDRgNCw0LfQvdC40YbQsC4nOwoKLyog0JTQtdC70LDQtdGCINC/0LXRgNCy0YPRjiDQsdGD0LrQstGDINCyINGB0YLRgNC+0LrQtSDQt9Cw0LPQu9Cw0LLQvdC+0LkgKi8KZnVuY3Rpb24gbWFrZUZpcnN0TGV0dGVyVXBwZXJjYXNlKCR0ZXh0KSB7CiAgICAkdGV4dCA9IHByZWdfc3BsaXQoJyNbPyEuXSN1JywgJHRleHQsIC0xLCBQUkVHX1NQTElUX05PX0VNUFRZKTsKICAgIGZvcmVhY2ggKCR0ZXh0IGFzICRrZXkgPT4gJGxldHRlcil7CiAgICAJJHRleHRbJGtleV0gPSB0cmltKCRsZXR0ZXIpOwogICAgCSR0ZXh0WyRrZXldID0gcHJlZ19zcGxpdCgnLy91JywgJGxldHRlciwgLTEsIFBSRUdfU1BMSVRfTk9fRU1QVFkpOwogICAgCSR0ZXh0WyRrZXldWzBdID0gbWJfc3RydG91cHBlcigkdGV4dFska2V5XVswXSk7CiAgICAJJHRleHRbJGtleV0gPSBpbXBsb2RlKCIiLCAkdGV4dFska2V5XSk7ZWNobyAiJGlucHV0XG4iOwogICAgfQogICAgJHRleHQgPSBpbXBsb2RlKCIuIiwkdGV4dCk7CiAgICByZXR1cm4gJHRleHQ7Cn0KCi8qINC40YHQv9GA0LDQstC70Y/QtdGCINGC0LXQutGB0YIgKi8KZnVuY3Rpb24gZml4VGV4dCgkdGV4dCl7CgkkdGV4dCA9IG1ha2VGaXJzdExldHRlclVwcGVyY2FzZSgkdGV4dCk7CgkkcmVnID0gJyMoW9CQLdCvXVxcLikjdSc7CgkkdGV4dCA9IHByZWdfcmVwbGFjZSgkcmVnLCAiJDEgIiwgJHRleHQpOwoJcmV0dXJuICR0ZXh0Owp9CgokcmVzdWx0ID0gZml4VGV4dCgkdGV4dCk7CmVjaG8gInskcmVzdWx0fVxuIjsK