lib/utils/string_content.ex
defmodule ScaffoldCa.Utils.StringContent do
def replace(content, []), do: content
def replace(content, [{variable_name, value} | tail]) do
replace(String.replace(content, variable_name, value), tail)
end
def format_name(name) do
case String.match?(name, ~r/^([a-zA-Z0-9]+)(_[a-zA-Z0-9]+)*$/) do
true -> {:ok, String.downcase(name), Macro.camelize(name)}
_ -> {:error, :invalid_name, name}
end
end
end