Генерация читаемого имени или фамилии

by SeoCoder on Ноябрь 27, 2008

Немногим раньше, выкладывал базу англоязычных имен и фамилий, сегодня на замечательном ресурсе phpclasses.org нашел прикольный класс, для генерации читаемого слова. Для чего применимо, думаю опять не стоит рассказывать.

Вот пример что оно генерило:

  • Xyulaxyewo
  • Thexyaquot
  • Sathixyaqu
  • Quethaquaz
  • Chocichova

Стоит упомянуть, что длина слова, настраивается.

Помогите с алгоритмом для русского языка. Буду очень признателен.

  • http://fu2-re.com Andrey

    Есть у меня такой, на цепях Маркова. Стукни, если интересно.

  • http://www.seocoder.org/ SeoCoder

    То есть получится читаемое слово по русски?!
    Выкладывай тут — многим будет интересно.

  • http://fu2-re.com/ Andrey

    Ну вот примеры (специально не фильтрую, что вышло то вышло):

    Преоталь
    Никличит
    Чивичтол
    Дутитсых
    Днееваес
    Анетатох

    Если нормально, то я сейчас на работу приеду и выложу у себя пост на эту тему и дам ссылку. Я на пхп класс писал, есть еще ворованый на питоне, но я его для английских только использовал, хотя думаю, что для русских будет примерно то же самое.

  • http://www.seocoder.org/ SeoCoder

    Питон нафиг, а php пойдет.
    Перепишу логику на Delphi себе
    Жду поста )

  • http://fu2-re.com/ Andrey

    Вот, держи:
    http://cookie.somemilk.org/2008/nov/27/generaciya-russkih-slov-i-teksta-cepyami-markova/

    Я потом допишу еще, сейчас просто исходник выложил.
    Там единственная проблема (была не так актуальна для меня в то время) — предполагается, что кодировка однобайтная, т.е. если использовать это в вебе и utf-8, то надо например перегнать исходный текст в cp-1251, а генерируемые слова перекодировать обратно в utf-8.

  • http://turenko.com/blog/ Mikhail

    Тут 2 варианта:
    1) модифицировать алгоритм к русским буквам (правильно отклассифицировать гласные, согласные, и т.д.);
    2) просто транслитерировать результат работы этого класса
    * Хюлахыещо
    * Тхехякуот
    * Сатхихяку
    * Куетхакуаз
    * Чоцичова
    (из примера в посте)
    Думаю это не хуже и не лучше, чем Преоталь, Никличит, Чивичтол, Дутитсых, Днееваес, Анетатох. :)

  • http://cookie.somemilk.org/ Andrey

    Дописал пост, добавил теорию и примеры на питоне и перле.

  • http://blog.gtalex.ru GTAlex

    Не пойму в чем проблема то ?
    Маркова конечно вариант, но тут и рандом обычный подойдет — перебирай гласные и согласные и всего делов :)
    Я если фамилии генерировал — еще в конец добавял распространенные фамильные окончания типа -ова -ов -ина -ин

  • http://11tea.net/ Сефирот

    Понимаешь какое дело. Когда составляешь случайное слово из всех букв подряд, то возникает ощущение наебки. Причем не у того, для кого слово предназначается, а у тебя самого. Почему? Потому что ты пытаешься угадать тайну морфологии, но вместо этого выдаешь на гора пустой эрзац. Когда же ты берешь в руки Маркова, то ты признаешь, что изначальный закон тебе неподвластен, ты можешь лишь тасовать буквы в имени Б-га. Что, как мы знаем, тоже чревато, но по крайней мере до поры до времени забавно и лишено случайной тупости.

  • http://zabpalcev.ru Арнольд

    Отличная тема, продолжайте. Иногда нахожу ответы, которые получить самому просто реально не хватает времени. Большое спасибо!