[解決済み] StringオブジェクトをHashオブジェクトに変換するにはどうすればよいですか?
2022-05-12 04:57:04
質問
ハッシュのような文字列があります。
"{ :key_a => { :key_1a => 'value_1a', :key_2a => 'value_2a' }, :key_b => { :key_1b => 'value_1b' } }"
どうやったらハッシュが出るの? みたいな。
{ :key_a => { :key_1a => 'value_1a', :key_2a => 'value_2a' }, :key_b => { :key_1b => 'value_1b' } }
文字列は任意の深さのネストを持つことができます。これはRubyで有効なHashがどのように型付けされるかのすべての特性を持っています。
解決方法は?
を呼び出して作成した文字列は
Hash#inspect
を呼び出すと、ハッシュに戻すことができます。
eval
をつける。ただし、この場合、ハッシュの中のすべてのオブジェクトが同じであることが必要です。
もし私がハッシュ
{:a => Object.new}
であれば、その文字列表現は
"{:a=>#<Object:0x7f66b65cf4d0>}"
を使用することはできません。
eval
を使ってハッシュに戻すことができます。
#<Object:0x7f66b65cf4d0>
はRubyの有効な構文ではありません。
しかし、ハッシュの中身が文字列、記号、数値、配列であれば、Rubyの有効な構文である文字列表現を持つので、動作するはずです。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Rubyで "gets "と "gets.chomp "を使用する方法
-
[解決済み] Rubyでファイル名を変更するには?
-
[解決済み] ルビーオールウェイズ ラウンドアップ
-
[解決済み] Rubyのフィボナッチ数列(再帰)
-
[解決済み] RMagickのインストール。MagickWand.hが見当たりません。
-
[解決済み] RubyのHashをキーでアルファベット順にソートする方法
-
[解決済み] Ruby で Fixnum から String への暗黙の変換ができない (TypeError)
-
[解決済み] rvmのインストールがうまくいきません。"RVMは機能ではありません"
-
[解決済み] Rubyにバイナリ検索は組み込まれていますか?
-
[解決済み] Rubyで指定されたディレクトリが存在するかどうかを確認する方法