defmodule Slug do
  def create_slug(str) do
    str
    |> String.trim
    |> String.downcase
    |> remove_accents
    |> String.replace(~r/[^a-z0-9]+/, "-")
    |> String.trim("-")
  end
  defp remove_accents(str) do
    str
    |> String.normalize(:nfd)
    |> String.replace(~r/[\x{0300}-\x{036f}]/u, "")
  end
end
IO.puts Slug.create_slug("Jak psát nadpisy?")
IO.puts Slug.create_slug("Příliš žluťoučký kůň úpěl ďábelské ódy") 
# Výstup: prilis-zlutoucky-kun-upel-dabelske-ody