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

Статус
В этой теме нельзя размещать новые ответы.

Rastafan

Постоялец
Регистрация
1 Фев 2008
Сообщения
648
Реакции
170
Посоветуйте пожалуйста прогу которая рендомно перемешивает предложения сохраняя его структуру.
 
Для просмотра ссылки Войди или Зарегистрируйся.

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

Если нет - сначала фильтр Поиск и замена знаков окончания предложения (точки, многоточия, вопрос и воскл знаки) на их же плюс перевод строки, и опять Рандомизация строк.
 
Можно воспользоваться red.Button функцией вставка строчек из текста
 
Text Magician специально для работы с текстом, там вроде есть эта функция
 
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:
 
PHP;)
PHP:
$text="Так говорила в июле 1805 года известная Анна Павловна Шерер, фрейлина и
приближенная  императрицы  Марии  Феодоровны,  встречая важного и  чиновного
князя  Василия,  первого  приехавшего  на  ее вечер. Анна  Павловна  кашляла
несколько  дней, у  нее был грипп, как она говорила (грипп  был тогда  новое
слово, употре***вшееся только  редкими).  В записочках, разосланных  утром с
красным лакеем, было написано без различия во всех";
$text = explode(".", $text);
shuffle($text);
$text=implode(".", $text);
echo $text;

Кратко и эффективно, стоит лишь добавить, что предложения могут заканчиваться не только точкой, а и другими знаками препинания ("?", "!")
 
Кратко и эффективно, стоит лишь добавить, что предложения могут заканчиваться не только точкой, а и другими знаками препинания ("?", "!")
Внес корективы ;)
 
Кратко и эффективно, стоит лишь добавить, что предложения могут заканчиваться не только точкой, а и другими знаками препинания ("?", "!")

А также кавычками, причем одинарными, двойными и двойными угловыми скобками. Я, когда писал свой парсер, предварительно заменял их все на двойные и потом обрабатывал.
 
Немного поменял и начало давать более привлекательный текст... Не особо красивый код, но работает. :)

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;  
?>
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху