Рандомизация текста по вложенным шаблонам на PHP

Рандомизация текста

Недавно писал про рандомизацию текста на PHP. Решил улучшить функцию, чтобы она поддерживала вложенные шаблоны.

Вложенные шаблоны имеют такой вид:

{Привет{|ствую}|Добрый {день|вечер}|Здравствуй{|те}}. Решил {Вам|тебе} {{кинуть|написать} {сообщение|мессагу}} о моей {проблеме|небольшой {задаче|трудности}|дилемме}.

Функция практически не изменилась, только теперь запускается в цикле, пока из текста не пропадут все символы “{” . И изменилось регулярное выражение, которое теперь будет брать самую вложенную конструкцию.

Еще решил написать функцию, которая передавала бы все возможные варианты текста в массив. Чтобы обработать все варианты функция запускает рекурсивно сама себя.

Здесь уже не получилось сделать так минималистично, как в прошлой функции и возможно существует более элегантное решение:

Использование функций:

Посмотреть скрипт в действии можно здесь http://geograph.us/web_tools/randomize_text

Так же в конце статьи прикреплен сам скрипт с примерами.

Скачать randomizetextadv.rar (Размер: 786.0 B / Скачиваний: 199)

2 комментария: Рандомизация текста по вложенным шаблонам на PHP

  • Набор букв говорит:

    Спасибо большое за твоё доброе дело для нас (вебмастеров). Очень много пользы приносит твой сайт. Спасибо что откликнулся на мою просьбу о скачивании файла для новичков.

  • gdr говорит:

    Спасибо за алгоритм. Переписал на python. На сложном шаблоне random_text_all() валится в memory error.
    https://gist.github.com/anonymous/d8142913902588fbcabe

Добавить комментарий для gdr Отменить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Не пропусти новые записи. Подпишись в соц. сетях:

E-mail рассылка блога:

Календарь

Декабрь 2018
Пн Вт Ср Чт Пт Сб Вс
« Авг    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Нас находят по запросам