Enum.shuffle()を使って、文字列をランダムにシャッフルする。
defmodule MyModule do def shuffle( str ) do :random.seed(:os.timestamp) # これがないと、いつもシャッフル後の文字列が同じとなる。 shuf = Enum.shuffle( String.codepoints( str ) ) Enum.join( shuf ) end end str = "abcde" IO.puts MyModule.shuffle( str ) IO.puts MyModule.shuffle( str )
出力例
PS C:\Users\tomohiko\Documents\19_elixir> elixir .\test_shuffle.exs adbce dbeac