如何使用 Erlang 将字符串拆分为具有多个值的列表?

Bor*_*ter 5 string erlang list

当我从 .txt 文件中读取特定行时,我得到一个这样的字符串:

"Test,Test2,Test3,Test4,Test5,Test6"
Run Code Online (Sandbox Code Playgroud)

我想转换这个字符串,以便它可以填充一个列表,如下所示:

List = [A, B, C, D, E, F]
Run Code Online (Sandbox Code Playgroud)

可以像这样在这样的列表中插入值,例如:

["A", "B", "C", "D", "E", "F"]
Run Code Online (Sandbox Code Playgroud)

但是当我尝试从文件中插入字符串时,它最终只存储在A变量中,因为内容没有被拆分。其他变量没有得到预期值。

我得到了什么:

List = ["Test,Test2,Test3,Test4,Test5,Test6", "B", "C", "D", "E", "F"]
Run Code Online (Sandbox Code Playgroud)

我想要的是:

List = ["Test", "Test2", "Test3", "Test4", "Test5", "Test6"]
Run Code Online (Sandbox Code Playgroud)

所以基本上我是在寻求帮助,将字符串拆分为 Erlang 中的某个字符来分隔值!

谢谢你的帮助!

Sou*_*lls 7

在 erlang 中有两种内置的拆分字符串的方法:string:tokens/2re:split/2,3

例如,使用字符串:令牌:

Line = "Test,Test2,Test3,Test4,Test5,Test6",
[A, B, C, D, E, F] = string:tokens(Line, ",").
Run Code Online (Sandbox Code Playgroud)

使用 re:split:

Line = "Test,Test2,Test3,Test4,Test5,Test6",
[A, B, C, D, E, F] = re:split(Line, ",")
Run Code Online (Sandbox Code Playgroud)