在 Erlang 中将字符串转换为字符的最惯用方法是什么



Erlang 中转换这个:"helloworld"["h","e","l","l","o","w","o","r","l","d"] 的最惯用方法是什么?

字符串是字符列表

1> [$h, $e, $l, $l, $o, $w, $o, $r, $l, $d].
"helloworld"

所以如果你问

将字符串转换为字符的最惯用方法是什么 二郎?

答案是没有,它已经是一个字符列表,您不必转换它。

如果你问,如何对字符串的字符应用一些函数,例如如何减去 32。

2> [ X - 32 || X <- "helloworld" ].
"HELLOWORLD"

或者,如果您询问如何获取一个字符串的列表

3> [[X] || X <- "helloworld"].
["h","e","l","l","o","w","o","r","l","d"]

在这个简单的情况下,列表理解的替代方法是列表模块中的map函数:

String = "helloworld",
lists:map(fun(X) -> [X] end, String).

您可以尝试使用以下代码:

1> [[X] || X <- "helloworld"].
["h","e","l","l","o","w","o","r","l","d"]

最新更新