0
我有一個設置文件,我正在讀取文件,並讀取一個字符串,並將其轉換爲散列以便於使用。將設置文件轉換爲散列
我如何轉換以下:
string="key1=value1\nkey2=value2"
分爲:
{"key1" => "value1", "key2" => "value2"}
我有一個設置文件,我正在讀取文件,並讀取一個字符串,並將其轉換爲散列以便於使用。將設置文件轉換爲散列
我如何轉換以下:
string="key1=value1\nkey2=value2"
分爲:
{"key1" => "value1", "key2" => "value2"}
你可以這樣做:
string.split("\n").map{|s| s.split("=")}.to_h
各地的新線一分。
string.split("\n")
#=> ["key1=value1", "key2=v vlue2"]
接着,分割各字符串周圍=
string.split("\n").map{|s| s.split("=")}
#=> [["key1", "value1"], ["key2", "v vlue2"]]
接下來,2-元件陣列的陣列轉換成散列通過調用to_h
方法。
string.split("\n").map{|s| s.split("=")}.to_h
#=> {"key1"=>"value1", "key2"=>"v vlue2"}
Hash[*string.split(/[\n=]/)] # => {"key1"=>"value1", "key2"=>"value2"}
的邏輯並不清楚。 ''value2''從哪裏來? – sawa
字符串中的拼寫錯誤值。現在有意義嗎? – Pabi