当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Elixir Macro.underscore用法及代码示例


Elixir语言中 Macro.underscore 相关用法介绍如下。

用法:

underscore(atom)
@spec underscore(atom() | String.t()) :: String.t()

将给定的原子或二进制转换为下划线格式。

如果给定一个原子,则假定它是一个 Elixir 模块,因此将其转换为二进制然后进行处理。

此函数旨在强调语言标识符/标记,这就是它属于 Macro 模块的原因。不要将它用作下划线字符串的通用机制,因为它不支持 Unicode 或 Elixir 标识符中无效的字符。

例子

iex> Macro.underscore("FooBar")
"foo_bar"

iex> Macro.underscore("Foo.Bar")
"foo/bar"

iex> Macro.underscore(Foo.Bar)
"foo/bar"

一般来说,underscore 可以被认为是 camelize 的反面,但是,在某些情况下,格式可能会丢失:

iex> Macro.underscore("SAPExample")
"sap_example"

iex> Macro.camelize("sap_example")
"SapExample"

iex> Macro.camelize("hello_10")
"Hello10"

相关用法


注:本文由纯净天空筛选整理自elixir-lang.org大神的英文原创作品 Macro.underscore(atom)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。