За последние 24 часа нас посетили 19547 программистов и 1602 робота. Сейчас ищут 904 программиста ...

После каждого 6 пробела поставить точку. PHP

Тема в разделе "PHP для новичков", создана пользователем atheroth, 18 дек 2017.

Метки:
  1. atheroth

    atheroth Новичок

    С нами с:
    17 авг 2017
    Сообщения:
    10
    Симпатии:
    0
    Существует такой текст

    мама мыла раму хочешь кататься люби и саночки возить

    Нужно сделать так, чтобы после каждого 6 пробела поставить точку, а следующий символ становился с большой буквы.

    Конечный результат был таковым

    мама мыла раму хочешь кататься люби. И саночки возить
    --- Добавлено ---
    Мучаюсь, не могу сделать.
     
  2. laszlopv

    laszlopv Активный пользователь

    С нами с:
    26 фев 2017
    Сообщения:
    244
    Симпатии:
    40
    Думаю можно сделать и проще, если подумать.

    PHP:
    1. $input_string = 'Мама mыла раму хочешь кататься люби и саночки возить';
    2. $array_input = explode(' ', $input_string);
    3.  
    4. $multiplicity=6;
    5. $temporary_string ='';
    6.  
    7. foreach ($array_input as $key => $value){
    8.  
    9.    if($key%6 == 0 && $key!=0){
    10.        $value = mb_convert_case($value,MB_CASE_TITLE,"UTF-8" );
    11.     }
    12.  
    13.     if($key%5==0 && $key!=0){
    14.        $value=$value.'.';
    15.     }
    16.  
    17.     $temporary_string=$temporary_string.' '.$value;
    18. }
    19.  
    20. print $temporary_string;
     
  3. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.593
    Симпатии:
    362
    @laszlopv, написано ведь: "После каждого шестого пробела"! Отчего-ж точка появляется перед ним? ;)
     
    laszlopv нравится это.
  4. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    а что делать с переводами строк?) что делать если уже есть точка и после нее пробел?)
     
  5. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    это походу задача какого-то учителя по говнокурсам)
    ничего не делать. Просто решить в лоб и не предусматривать никаких крашевых ситуаций)
     
  6. voral

    voral Активный пользователь

    С нами с:
    30 ноя 2017
    Сообщения:
    646
    Симпатии:
    104
    ИМХО тут напрашивается регулярка
     
  7. laszlopv

    laszlopv Активный пользователь

    С нами с:
    26 фев 2017
    Сообщения:
    244
    Симпатии:
    40
    Это я отсебятины добавил, не красиво как то точки после пробелов тыкать.
    --- Добавлено ---
    Это все можно решить)))