За последние 24 часа нас посетили 55150 программистов и 1779 роботов. Сейчас ищут 1235 программистов ...

Выбрать из предложения слова больше 3-х символов

Тема в разделе "PHP для новичков", создана пользователем leshiy, 8 ноя 2014.

  1. leshiy

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

    С нами с:
    18 июл 2008
    Сообщения:
    90
    Симпатии:
    0
    Код (Text):
    1. $dd= preg_replace('/ /i', ', ' , $title);
    2. echo $dd;
    Код делящий все слова в предложении ', '
    Нужно убрать слова меньше 3-х букв.
     
  2. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    покажи предложение для примера.
    Если нужна регулярка то создавай тему в нужном разделе.
     
  3. leshiy

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

    С нами с:
    18 июл 2008
    Сообщения:
    90
    Симпатии:
    0
    пример: Выбрать из предложения слова больше 3-х символов
    выводится: Выбрать, из, предложения, слова, больше, 3-х, символов
    нужно: Выбрать, предложения, слова, больше, символов
     
  4. metadon

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

    С нами с:
    6 фев 2006
    Сообщения:
    779
    Симпатии:
    0
    Можно сделать explode по пробелам для предложения и потом через цикл из массива выкинуть все слова меньше трёх символов и собрать обратно в предложение
     
  5. leshiy

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

    С нами с:
    18 июл 2008
    Сообщения:
    90
    Симпатии:
    0
    Код (Text):
    1. $dd = substr($title,0,strpos($title,''));
    2. $dd = explode(' ',$title);
    3. preg_match('~^(.*)\s~', $dd);
    4. foreach($dd as $key=>$val){if(strlen($val)<=3) unset($dd[$key]);}
    получилось: Выбрать предложения слова больше символов
    а как бы их разбить запятыми.
     
  6. metadon

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

    С нами с:
    6 фев 2006
    Сообщения:
    779
    Симпатии:
    0
    Два раза explode сделать, по запятым, потом по пробелам
     
  7. leshiy

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

    С нами с:
    18 июл 2008
    Сообщения:
    90
    Симпатии:
    0
    Одна проблемка этот код выводит слова по отдельности
    echo $dd[0]; echo $dd[0]; и т.д.
     
  8. metadon

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

    С нами с:
    6 фев 2006
    Сообщения:
    779
    Симпатии:
    0
    сделайте чтобы не по отдельности, пробелы можно добавить

    Вот эта функция может помочь php.net/manual/ru/function.strtok.php
     
  9. rognorog

    rognorog Новичок

    С нами с:
    7 июл 2014
    Сообщения:
    330
    Симпатии:
    0
    Код (PHP):
    1. $subject='Выбрать из предложения слова больше 3-х символов слов и т.д.';
    2. $matches=array();
    3. preg_match_all('/(\S+){4,}/u',$subject,$matches);
    4. $matches=$matches[0];
    5. $matches=join(', ',$matches);
    6. echo $matches;//Выбрать, предложения, слова, больше, символов, слов, т.д.  
     
  10. leshiy

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

    С нами с:
    18 июл 2008
    Сообщения:
    90
    Симпатии:
    0
    СПАСИБО!!!Все получилось.