Ищу прогу перемешивающую предложения.

Тема в разделе "Вопросы новичков", создана пользователем Rastafan, 21 ноя 2008.

Статус темы:
Закрыта.
  1. Rastafan

    Rastafan

    Регистр.:
    1 фев 2008
    Сообщения:
    649
    Симпатии:
    169
    Посоветуйте пожалуйста прогу которая рендомно перемешивает предложения сохраняя его структуру.
     
  2. General Fizz

    General Fizz Боевой Генерал :)

    Регистр.:
    11 апр 2007
    Сообщения:
    753
    Симпатии:
    396
    Перейти по ссылке.

    Если каждое предложение с новой строки - фильтр Рандомизация строк.

    Если нет - сначала фильтр Поиск и замена знаков окончания предложения (точки, многоточия, вопрос и воскл знаки) на их же плюс перевод строки, и опять Рандомизация строк.
     
    Serg78 и Rastafan нравится это.
  3. monia

    monia

    Регистр.:
    27 июл 2007
    Сообщения:
    421
    Симпатии:
    68
    Можно воспользоваться red.Button функцией вставка строчек из текста
     
  4. reboRn

    reboRn

    Регистр.:
    19 июл 2007
    Сообщения:
    277
    Симпатии:
    14
    Text Magician специально для работы с текстом, там вроде есть эта функция
     
  5. Platon

    Platon Постоялец

    Регистр.:
    5 фев 2007
    Сообщения:
    87
    Симпатии:
    12
    Попробуй http://seogenerator.ru
    Для моих небольших нужд меня устраивает
     
  6. ewg777

    ewg777

    Регистр.:
    6 авг 2007
    Сообщения:
    763
    Симпатии:
    321
    PHP;)
    PHP:
    $text="Так говорила в июле 1805 года известная Анна Павловна Шерер, фрейлина и
    приближенная  императрицы  Марии  Феодоровны,  встречая важного и  чиновного
    князя  Василия,  первого  приехавшего  на  ее вечер. Анна  Павловна  кашляла
    несколько  дней, у  нее был грипп, как она говорила (грипп  был тогда  новое
    слово, употре***вшееся только  редкими).  В записочках, разосланных  утром с
    красным лакеем, было написано без различия во всех"
    ;
    $text=str_replace("'"'"'$text);
    $text=str_replace("(""."$text);
    $text=str_replace(")""."$text);
    $text explode("."$text);
    $text explode("?"$text);
    $text explode("!"$text);
    shuffle($text);
    $text=implode("."$text);
    echo 
    $text;
    ;):yahoo::ay::smmne:
     
    Platon нравится это.
  7. Alix

    Alix

    Регистр.:
    27 янв 2008
    Сообщения:
    234
    Симпатии:
    84
    Кратко и эффективно, стоит лишь добавить, что предложения могут заканчиваться не только точкой, а и другими знаками препинания ("?", "!")
     
  8. ewg777

    ewg777

    Регистр.:
    6 авг 2007
    Сообщения:
    763
    Симпатии:
    321
    Внес корективы ;)
     
  9. General Fizz

    General Fizz Боевой Генерал :)

    Регистр.:
    11 апр 2007
    Сообщения:
    753
    Симпатии:
    396
    А также кавычками, причем одинарными, двойными и двойными угловыми скобками. Я, когда писал свой парсер, предварительно заменял их все на двойные и потом обрабатывал.
     
  10. jacksoft

    jacksoft

    Регистр.:
    22 мар 2007
    Сообщения:
    595
    Симпатии:
    460
    Немного поменял и начало давать более привлекательный текст... Не особо красивый код, но работает. :)

    PHP:
    <?php
    $text
    ="Так говорила в июле 1805 года известная Анна Павловна Шерер, фрейлина и
    приближенная  императрицы  Марии  Феодоровны,  встречая важного и  чиновного
    князя  Василия,  первого  приехавшего  на  ее вечер. Анна  Павловна  кашляла
    несколько  дней, у  нее был грипп, как она говорила (грипп  был тогда  новое
    слово, употре***вшееся только  редкими).  В записочках, разосланных  утром с
    красным лакеем, было написано без различия во всех."
    ;
    $text=str_replace("'"'"'$text);
    $text=str_replace("!""."$text);
    $text=str_replace("?""."$text);
    $text=str_replace("\n"" "$text);
    $text=str_replace("\r"" "$text);
    $text=preg_replace("#[\.]{2,5}#isU""."$text);
    $text=preg_replace("#[ ]{2,5}#isU"" "$text);
    $text=str_replace(". ""."$text);
    $text=preg_replace("#[\.]{2,5}#isU""."$text);
    $text=preg_replace("#[ ]{2,5}#isU"" "$text);
    $texta explode("."$text);
    shuffle($texta);
    $text=implode("."$texta);
    $text .= ".";
    $text=str_replace("..""."$text);
    $text=str_replace("."". "$text);
    $text=preg_replace("#^\. #isU"""$text);
    echo 
    $text;  
    ?>
     
Статус темы:
Закрыта.