<?php
//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)
{
return $text;
}
/* исправляет текст */
function fixText($text)
{
$result = preg_split('/([.!?])/u', $text, 0, PREG_SPLIT_DELIM_CAPTURE
| PREG_SPLIT_NO_EMPTY
); foreach($result as &$sentence)
{
$sentence = trim($sentence); $sentence = makeFirstLetterUppercase($sentence);
}
//var_dump($result);
return $text;
}
$result = fixText($text);
echo "\n$result\n";
PD9waHAKCiAKZXJyb3JfcmVwb3J0aW5nKC0xKTsKLy9tYl9pbnRlcm5hbF9lbmNvZGluZygndXRmLTgnKTsKCi8vINCU0LvRjyDRgtC10YHRgtC+0LIgCiR0ZXh0ID0gItC90YMg0YfRgtC+LiAgICAgINC90LUg0YHQvNC+0YLRgNC10Lsg0LXRidC1IGJsYWNrIG1lc2Eu0Y8g0YHQvtCx0LjRgNCw0LvRgdGPINGB0LrQsNGH0LDRgtGMICAs0L3QviDQstGB0LUg0LrQsNC6LdGC0L4g0L3QtdC60L7Qs9C00LAg0LHRi9C70L4uIjsKLy8kdGV4dCA9ICJyb3NlcyBhcmUgcmVkICAgLCAgIGFuZCB2aW9sZXRzIGFyZSBibHVlP3doYXRldmVyIHlvdSBkbyBpJ2xsICxrZWVwIGl0IGZvciB5b3UuIjsKLy8gJHRleHQgPSAn0L/RgNC40LLQtdGCLtC10YHRgtGMIDIg0YTRg9C90LrRhtC40LgscHJlZ19zcGxpdCDQuCBleHBsb2RlICzQvdC1INC/0L7QvdC40LzQsNGOLNCyINGH0LXQvCDQvNC10LbQtNGDINC90LjQvNC4INGA0LDQt9C90LjRhtCwLic7CiAKLyog0JTQtdC70LDQtdGCINC/0LXRgNCy0YPRjiDQsdGD0LrQstGDINCyINGB0YLRgNC+0LrQtSDQt9Cw0LPQu9Cw0LLQvdC+0LkgKi8KZnVuY3Rpb24gbWFrZUZpcnN0TGV0dGVyVXBwZXJjYXNlKCR0ZXh0KSAKewoJJHRleHRbMF0gPSBtYl9zdHJ0b3VwcGVyKCR0ZXh0WzBdKTsKCXJldHVybiAkdGV4dDsKfQogCi8qINC40YHQv9GA0LDQstC70Y/QtdGCINGC0LXQutGB0YIgKi8KZnVuY3Rpb24gZml4VGV4dCgkdGV4dCkgCnsKCSRyZXN1bHQgPSBwcmVnX3NwbGl0KCcvKFsuIT9dKS91JywgJHRleHQsIDAsIFBSRUdfU1BMSVRfREVMSU1fQ0FQVFVSRSB8IFBSRUdfU1BMSVRfTk9fRU1QVFkpOwoJZm9yZWFjaCgkcmVzdWx0IGFzICYkc2VudGVuY2UpCgl7CgkJJHNlbnRlbmNlID0gdHJpbSgkc2VudGVuY2UpOwoJCSRzZW50ZW5jZSA9IG1ha2VGaXJzdExldHRlclVwcGVyY2FzZSgkc2VudGVuY2UpOwoJfQoJLy92YXJfZHVtcCgkcmVzdWx0KTsKCSR0ZXh0ID0gaW1wbG9kZSgnJywgJHJlc3VsdCk7CgkkdGV4dCA9IHByZWdfcmVwbGFjZSgnLyAqKFssOjsuIT9dKSAqL3UnLCIkMSAiLCAkdGV4dCk7CglyZXR1cm4gJHRleHQ7CiAKfQogCiRyZXN1bHQgPSBmaXhUZXh0KCR0ZXh0KTsKZWNobyAiXG4kcmVzdWx0XG4iOwog