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



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

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

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

OFFLINE Отправлено

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

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

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

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

 





    • 0
  • Наверх

ONLINE Отправлено

Mik
группа пользователя
  • Онлайн:91д 16ч 16м
125
Возможно это поможет, но я не уверен точно
http://stackoverflow...intax-spin-text

гуглите spintax

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

    • 0
  • Наверх

ONLINE Отправлено

Glor
группа пользователя
  • Онлайн:294д 11ч 35м
1 235

Используя класс 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

    • 1
  • Наверх

OFFLINE Отправлено

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

lenght

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

OFFLINE Отправлено

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

 

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

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

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

 

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


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

    • 0
  • Наверх

OFFLINE Отправлено

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

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

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

 

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

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


    • 0
  • Наверх

ONLINE Отправлено

Glor
группа пользователя
  • Онлайн:294д 11ч 35м
1 235

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

 

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

 

 

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

  • {текст 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

    • 0
  • Наверх

OFFLINE Отправлено

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

Используя класс 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
  • Наверх