другого не завезли
нет у меня сейчас не эликсир а эрланг, вот код — random_bytes(Length) -> crypto:strong_rand_bytes(Length). random_unsigned_int(A, B) -> Size = erlang:byte_size(binary:encode_unsigned(B)), Rand_value = crypto:bytes_to_integer(?MODULE:random_bytes(Size)), Result = A + (Rand_value rem (B - A + 1)), if Result > B -> ?MODULE:random_unsigned_int(A, B); true -> Result end. random_latin_int_string(Length) -> random_latin_int_string(Length, <<"">>). random_latin_int_string(Length, Result) -> Str = <<"0123456789abcdefghijklmnopqrstuvwxyz">>, if erlang:byte_size(Result) < Length -> Rand_place = ?MODULE:random_unsigned_int(0,35), Result1 = binary:part(Str,{Rand_place,1}), Result2 = <<Result/binary, Result1/binary>>, ?MODULE:random_latin_int_string(Length, Result2); true -> Result end.
Обсуждают сегодня