将数组转换为字符串然后返回数组

use*_*240 -3 ruby arrays string

我建立了一个presenter类,其唯一的工作就是将给定的数组转换为字符串。我正在测试解决方案的驱动程序,因此我从开始做起,"[nil, nil, nil]"nil最终每个都将替换为letter。该功能由另一个类处理。

我现在正在尝试构建一个接口,其唯一的工作就是将该字符串转换回数组。因此,我需要将例如转换"[\"a\", \"b\", nil]"["a", "b", nil]。但是我被困住了。

例如,我想转换

"[nil, nil, nil]"
Run Code Online (Sandbox Code Playgroud)

 [nil, nil, nil]
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

teb*_*oso 5

只需使用:

eval(string)

eval("[nil, nil, nil]")
Run Code Online (Sandbox Code Playgroud)

警告:

这是一种非常不安全的方法,只有在完全确定该字符串包含SAFE数组时,才必须使用它。

  • 这是解析输入的非常不安全的方式,因为它可能包含意外的数据,这可能很危险。 (7认同)
  • 别。使用。评估 (2认同)
  • 乌里·阿加西(Uri Agassi),第11页,赞成这些评论的任何人,以及反对这个答案的任何人,**提供一种不使用eval的替代方法**。如果不能,请撤回您所写/做过的事情。 (2认同)