<?php
/* Делает первую букву в строке заглавной */
function makeFirstLetterUppercase( $text ) {
//Берём первый символ, делаем его большим.
}
///* исправляет текст */
function fixText( $text ) { //sentence
// разделяем текст про предложениям.
$sentences = preg_split ( "/(?<=[.])|(?<=[?])/u" , $text , - 1 , PREG_SPLIT_NO_EMPTY
) ; //Удаляй хоть 100 пробелов.
$regexpSpace = "/(\s){2,100}/ui" ;
//В каждом предложении ищем пробелы и исправляем.
foreach ( ( $sentences ) as $sentence ) {
//Пихаем исправленное предложение без повторных пробелов
$upperLetterSentence = makeFirstLetterUppercase( $someSentence ) ;
}
$fixedtext = implode ( " " , $sentenceFix ) ; //Осталось проверить на пробелы после препинаний.
$fixedtext = preg_replace ( "/([[:punct:]]+)\s*/" , '$1 ' , $fixedtext ) ; $fixedtext = preg_replace ( "/\s*([[:punct:]]+)/" , '$1' , $fixedtext ) ;
echo "<pre>" ;
echo "<pre>" ;
return $fixedtext ;
}
//$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 ,не понимаю,в чем между ними разница.';
$text = "много их в Петербурге,молоденьких дур,сегодня в атласе да бархате,а завтра , поглядишь , метут улицу вместе с голью кабацкою...в самом деле ,что было бы с нами ,если бы вместо общеудобного правила:чин чина почитай , ввелось в употребление другое,например:ум ума почитай?какие возникли бы споры!" ;
$result = fixText( $text ) ;
echo "{$result} \n " ;
PD9waHAKZXJyb3JfcmVwb3J0aW5nKC0xKTsKbWJfaW50ZXJuYWxfZW5jb2RpbmcoJ3V0Zi04Jyk7Ci8qINCU0LXQu9Cw0LXRgiDQv9C10YDQstGD0Y4g0LHRg9C60LLRgyDQsiDRgdGC0YDQvtC60LUg0LfQsNCz0LvQsNCy0L3QvtC5ICovCmZ1bmN0aW9uIG1ha2VGaXJzdExldHRlclVwcGVyY2FzZSgkdGV4dCkgewogICAgLy/QkdC10YDRkdC8INC/0LXRgNCy0YvQuSDRgdC40LzQstC+0LssINC00LXQu9Cw0LXQvCDQtdCz0L4g0LHQvtC70YzRiNC40LwuCiAgICByZXR1cm4gbWJfc3RydG91cHBlcihtYl9zdWJzdHIoJHRleHQsIDAsIDEsICdVVEYtOCcpLCAnVVRGLTgnKSAuIG1iX3N1YnN0cihtYl9jb252ZXJ0X2Nhc2UoJHRleHQsIE1CX0NBU0VfTE9XRVIsICdVVEYtOCcpLCAxLCBtYl9zdHJsZW4oJHRleHQpLCAnVVRGLTgnKTsKfQovLy8qINC40YHQv9GA0LDQstC70Y/QtdGCINGC0LXQutGB0YIgKi8KZnVuY3Rpb24gZml4VGV4dCgkdGV4dCkgeyAgLy9zZW50ZW5jZQogICAgJHNlbnRlbmNlRml4PWFycmF5KCk7CiAgICAvLyDRgNCw0LfQtNC10LvRj9C10Lwg0YLQtdC60YHRgiDQv9GA0L4g0L/RgNC10LTQu9C+0LbQtdC90LjRj9C8LgogICAgJHNlbnRlbmNlcyA9IHByZWdfc3BsaXQoIi8oPzw9Wy5dKXwoPzw9Wz9dKS91IiwgJHRleHQsIC0xLCBQUkVHX1NQTElUX05PX0VNUFRZKTsKICAgIC8v0KPQtNCw0LvRj9C5INGF0L7RgtGMIDEwMCDQv9GA0L7QsdC10LvQvtCyLgogICAgJHJlZ2V4cFNwYWNlPSIvKFxzKXsyLDEwMH0vdWkiOwogICAgLy/QkiDQutCw0LbQtNC+0Lwg0L/RgNC10LTQu9C+0LbQtdC90LjQuCDQuNGJ0LXQvCDQv9GA0L7QsdC10LvRiyDQuCDQuNGB0L/RgNCw0LLQu9GP0LXQvC4KICAgIGZvcmVhY2ggKCgkc2VudGVuY2VzKSBhcyAkc2VudGVuY2UpIHsKICAgICAgICAkc29tZVNlbnRlbmNlPXByZWdfcmVwbGFjZSgkcmVnZXhwU3BhY2UsICcnICwkc2VudGVuY2UpOwogICAgICAgIC8v0J/QuNGF0LDQtdC8INC40YHQv9GA0LDQstC70LXQvdC90L7QtSDQv9GA0LXQtNC70L7QttC10L3QuNC1INCx0LXQtyDQv9C+0LLRgtC+0YDQvdGL0YUg0L/RgNC+0LHQtdC70L7QsgogICAgICAgICR1cHBlckxldHRlclNlbnRlbmNlPW1ha2VGaXJzdExldHRlclVwcGVyY2FzZSgkc29tZVNlbnRlbmNlKTsKICAgICAgICBhcnJheV9wdXNoKCRzZW50ZW5jZUZpeCwgJHVwcGVyTGV0dGVyU2VudGVuY2UpOwogICAgfQogICAgJGZpeGVkdGV4dD0gaW1wbG9kZSgiICIsICRzZW50ZW5jZUZpeCk7CiAgICAvL9Ce0YHRgtCw0LvQvtGB0Ywg0L/RgNC+0LLQtdGA0LjRgtGMINC90LAg0L/RgNC+0LHQtdC70Ysg0L/QvtGB0LvQtSDQv9GA0LXQv9C40L3QsNC90LjQuS4KICAgICRmaXhlZHRleHQ9cHJlZ19yZXBsYWNlKCIvKFtbOnB1bmN0Ol1dKylccyovIiwgJyQxICcsICRmaXhlZHRleHQpOwogICAgJGZpeGVkdGV4dD1wcmVnX3JlcGxhY2UoIi9ccyooW1s6cHVuY3Q6XV0rKS8iLCAnJDEnLCAkZml4ZWR0ZXh0KTsKCgogICAgZWNobyAiPHByZT4iOwogICAgcHJpbnRfcigkZml4ZWR0ZXh0KTsKICAgIGVjaG8gIjxwcmU+IjsKICAgIHJldHVybiAkZml4ZWR0ZXh0Owp9CgovLyR0ZXh0ID0gItC90YMg0YfRgtC+LiAgICAgINC90LUg0YHQvNC+0YLRgNC10Lsg0LXRidC1IGJsYWNrIG1lc2Eu0Y8g0YHQvtCx0LjRgNCw0LvRgdGPINGB0LrQsNGH0LDRgtGMICAs0L3QviDQstGB0LUg0LrQsNC6LdGC0L4g0L3QtdC60L7Qs9C00LAg0LHRi9C70L4uIjsKLy8g0JTQu9GPINGC0LXRgdGC0L7QsgovLyAkdGV4dCA9ICJyb3NlcyBhcmUgcmVkLGFuZCB2aW9sZXRzIGFyZSBibHVlLndoYXRldmVyIHlvdSBkbyBpJ2xsIGtlZXAgaXQgZm9yIHlvdS4iOwogLy8kdGV4dCA9ICfQv9GA0LjQstC10YIu0LXRgdGC0YwgMiDRhNGD0L3QutGG0LjQuCxwcmVnX3NwbGl0INC4IGV4cGxvZGUgLNC90LUg0L/QvtC90LjQvNCw0Y4s0LIg0YfQtdC8INC80LXQttC00YMg0L3QuNC80Lgg0YDQsNC30L3QuNGG0LAuJzsKJHRleHQ9ItC80L3QvtCz0L4g0LjRhSDQsiDQn9C10YLQtdGA0LHRg9GA0LPQtSzQvNC+0LvQvtC00LXQvdGM0LrQuNGFINC00YPRgCzRgdC10LPQvtC00L3RjyDQsiDQsNGC0LvQsNGB0LUg0LTQsCDQsdCw0YDRhdCw0YLQtSzQsCDQt9Cw0LLRgtGA0LAgLCDQv9C+0LPQu9GP0LTQuNGI0YwgLCDQvNC10YLRg9GCINGD0LvQuNGG0YMg0LLQvNC10YHRgtC1INGBINCz0L7Qu9GM0Y4g0LrQsNCx0LDRhtC60L7Rji4uLtCyINGB0LDQvNC+0Lwg0LTQtdC70LUgLNGH0YLQviDQsdGL0LvQviDQsdGLINGBINC90LDQvNC4ICzQtdGB0LvQuCDQsdGLINCy0LzQtdGB0YLQviDQvtCx0YnQtdGD0LTQvtCx0L3QvtCz0L4g0L/RgNCw0LLQuNC70LA60YfQuNC9INGH0LjQvdCwINC/0L7Rh9C40YLQsNC5ICwg0LLQstC10LvQvtGB0Ywg0LIg0YPQv9C+0YLRgNC10LHQu9C10L3QuNC1INC00YDRg9Cz0L7QtSzQvdCw0L/RgNC40LzQtdGAOtGD0Lwg0YPQvNCwINC/0L7Rh9C40YLQsNC5P9C60LDQutC40LUg0LLQvtC30L3QuNC60LvQuCDQsdGLINGB0L/QvtGA0YshIjsKJHJlc3VsdCA9IGZpeFRleHQoJHRleHQpOwplY2hvICJ7JHJlc3VsdH1cbiI7
stdout
<pre>Много их в петербурге, молоденьких дур, сегодня в атласе да бархате, а завтра, поглядишь, метут улицу вместе с голью кабацкою... В самом деле, что было бы с нами, если бы вместо общеудобного правила: чин чина почитай, ввелось в употребление другое, например: ум ума почитай? Какие возникли бы споры! <pre>Много их в петербурге, молоденьких дур, сегодня в атласе да бархате, а завтра, поглядишь, метут улицу вместе с голью кабацкою... В самом деле, что было бы с нами, если бы вместо общеудобного правила: чин чина почитай, ввелось в употребление другое, например: ум ума почитай? Какие возникли бы споры!