ruby-on-rails - 将嵌套数组的字符串表示形式转换为数组

标签 ruby-on-rails arrays ruby string ruby-on-rails-4

我有一个数组的字符串表示:

val1 = "[[\":one\", \":two\"], [\":four\", \":one\"]]"

将其转换为的最佳方法是什么:

val2 = [[:one,:two], [:four, :one]]

数组的维度可以是25 x 25

最佳答案

使用JSON.parse:

require 'json'
val2 = JSON.parse val1
# => [[":one", ":two"], [":four", ":one"]]

或者您可以将它们转换为这样的符号:

val2.map{|a,b| [a.sub(/^:/,'').to_sym, b.sub(/^:/,'').to_sym]}
# => [[:one, :two], [:four, :one]]

关于ruby-on-rails - 将嵌套数组的字符串表示形式转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31128788/

相关文章:

ruby-on-rails - 将远程 URL 文件附加为操作邮件程序中的附件

javascript 未在 Rails 编辑页面上执行

ruby - 本地加入一个带有 block 的数组

ruby-on-rails - 如何编写一个 Rails 查询来按月返回计数?

ruby-on-rails - 如何将特定请求详细信息记录到 Rails 服务器日志

ruby-on-rails - Rails - form_for select 显示我来自数据库的类别

php - 如何优化数组搜索以取消设置它并重新索引搜索的数组?

javascript - 与 Node 异步不是更好吗

php - 按最后一个值对 MySQL 结果排序

mysql - Ruby on Rails 捆绑安装 mysql2 错误