Перейти к содержимому



Купить ссылку здесь
Фотография

Рандомизация в MC VS 2012

Форум ZiSMO.biz
7
Сообщений в теме: 7

OFFLINE Отправлено

TheLuck
группа пользователя

    Форум чёт немног скатился.

  • Cообщений: 1 734
  • Поинты: 3
  • Предупреждений: 110
86

Привет, хочу написать регер инстаграм, возник вопрос:

Как сделать рандомизацию текста?
И можно саму команду?

За верный ответ дам лайк)

 





    • 0
  • Наверх

OFFLINE Отправлено

Mik
группа пользователя

    ШАБЛОНЫ ZENNO (id364847777)

  • Cообщений: 1 123
  • Друзей:242
  • Поинты: 1
  • Предупреждений: 30
  • Онлайн:65д 20ч 10м
97
Возможно это поможет, но я не уверен точно
http://stackoverflow...intax-spin-text

гуглите spintax

Сообщение отредактировал Mik: 11 08 2016 - 19:26

    • 0
  • Наверх

OFFLINE Отправлено

Glor
группа пользователя

    C# Developer

  • Cообщений: 9 819
  • Друзей:223
  • Поинты: 286
  • Предупреждений: 0
  • Онлайн:186д 10ч 18м
752

Используя класс Random.
Создал объект:
 

Random rnd = new Random();

Дальше можно  сделать строку, которая содержит весь алфавит, и тащить из неё по одному случайному символу.
 
Пример, строка и метод. Параметр lenght  - длинна желаемой строки на выходе.

static string alf = "qwertyuiopasdfghjklzxcvbnm";



        string getRandomStr(int lenght)
        {
            string ansver = null;
            for (int i = 0; i < lenght; i++)
            {
                ansver+=alf[rnd.Next(0,alf.Length)];
            }
            return ansver;
        }



Способов уйма. Это один из самых простых.


Сообщение отредактировал Glor: 11 08 2016 - 20:48

image1gif_2013935_22758455.gif

    • 1
  • Наверх

OFFLINE Отправлено

BlackShadow
группа пользователя

    Пользователь

  • Cообщений: 200
  • Друзей:7
  • Поинты: 1
  • Предупреждений: 70
19

lenght

видно что сам писал
    • 0
  • Наверх

OFFLINE Отправлено

FTOH
группа пользователя

    Постоянный

  • Cообщений: 1 715
  • Друзей:72
  • Поинты: 3
  • Предупреждений: 70
226

 

Он наверно имел ввиду что-то подобное.

  • {текст 1|текст 2|текст 3} - перебор
  • [текст 1|текст 2|текст 3] - перестановки
  • [+разделитель+текст 1|текст 2|текст 3] - перестановки с разделителем
  • \{ \} \| \[ \] \+ \\ - экранизация спецсимволов
  • Поддерживается вложенность директив

P.S. Оператор += каждый раз создает новую строку, что приводит к пожиранию памяти и снижению скорости. Лучше использовать класс StringBuilder.

 

 
Нашел онлайн ресурс http://xbb.uz/randomizator/. Можно делать POST запрос и парсить ответ. Там же можно скачать исходники на PHP и переписать их на нужный вам язык (вы не указали какой).


Сообщение отредактировал FTOH: 11 08 2016 - 22:00

    • 0
  • Наверх

OFFLINE Отправлено

FTOH
группа пользователя

    Постоянный

  • Cообщений: 1 715
  • Друзей:72
  • Поинты: 3
  • Предупреждений: 70
226

И можно саму команду?

Такой команды нет))

 

видно что сам писал

Я тоже постоянно путаю))


    • 0
  • Наверх

OFFLINE Отправлено

Glor
группа пользователя

    C# Developer

  • Cообщений: 9 819
  • Друзей:223
  • Поинты: 286
  • Предупреждений: 0
  • Онлайн:186д 10ч 18м
752

видно что сам писал

 

с анг. очень туго, поэтому... )

 

 

Он наверно имел ввиду что-то подобное.

  • {текст 1|текст 2|текст 3} - перебор
  • [текст 1|текст 2|текст 3] - перестановки
  • [+разделитель+текст 1|текст 2|текст 3] - перестановки с разделителем
  • \{ \} \| \[ \] \+ \\ - экранизация спецсимволов
  • Поддерживается вложенность директив

P.S. Оператор += каждый раз создает новую строку, что приводит к пожиранию памяти и снижению скорости. Лучше использовать класс StringBuilder.

 

 
Нашел онлайн ресурс http://xbb.uz/randomizator/. Можно делать POST запрос и парсить ответ. Там же можно скачать исходники на PHP и переписать их на нужный вам язык (вы не указали какой).

 

По поводу +=. У .NET сборщик мусора встроенный, поэтому это не критично я думаю) 

 

 

Ах, да, пример для C# приведён, только сейчас увидел, что ТС не указал ЯП.


Сообщение отредактировал Glor: 11 08 2016 - 22:10

image1gif_2013935_22758455.gif

    • 0
  • Наверх

OFFLINE Отправлено

TheLuck
группа пользователя

    Форум чёт немног скатился.

  • Cообщений: 1 734
  • Поинты: 3
  • Предупреждений: 110
86

Используя класс Random.
Создал объект:
 

Random rnd = new Random();

Дальше можно  сделать строку, которая содержит весь алфавит, и тащить из неё по одному случайному символу.
 
Пример, строка и метод. Параметр lenght  - длинна желаемой строки на выходе.

static string alf = "qwertyuiopasdfghjklzxcvbnm";



        string getRandomStr(int lenght)
        {
            string ansver = null;
            for (int i = 0; i < lenght; i++)
            {
                ansver+=alf[rnd.Next(0,alf.Length)];
            }
            return ansver;
        }



Способов уйма. Это один из самых простых.

спасибо :D


    • 0
  • Наверх