在本文中,我們將討論如何將字符串轉換為哈希紅 gems 。我們可以通過不同的方法將字符串轉換為哈希值,從解析 JSON、解析 YAML 到自定義字符串解析。
使用 JSON 解析將字符串轉換為哈希
JSON.parse
方法解析 JSON 格式的字符串並返回表示解析數據的哈希值。
用法:
hash = JSON.parse(string)
例子:在此示例中,JSON 字符串json_string
被解析使用JSON.parse
,生成包含 JSON 數據中的鍵值對的哈希。
require 'json'
# Define a JSON string
json_string = '{"name": "John", "age": 30, "city": "New York"}'
# Convert JSON string to a hash
hash = JSON.parse(json_string)
puts hash
# Output: {"name"=>"John", "age"=>30, "city"=>"New York"}
輸出
{"name"=>"John", "age"=>30, "city"=>"New York"}
使用 YAML 解析將字符串轉換為哈希
YAML.safe_load
方法用於將 YAML 格式的字符串解析為哈希值。
用法:
hash = YAML.safe_load(string)
例子:在此示例中,YAML 字符串
被解析使用YAML.safe_load
,生成包含 YAML 數據中的鍵值對的哈希值
require 'yaml'
# Define a YAML string
yaml_string = "---\nname: John\nage: 30\ncity: New York\n"
# Convert YAML string to a hash
hash = YAML.safe_load(yaml_string)
puts hash
# Output: {"name"=>"John", "age"=>30, "city"=>"New York"}
輸出
{"name"=>"John", "age"=>30, "city"=>"New York"}
自定義字符串解析為哈希
在這個方法中我們 實現自定義解析邏輯以將字符串轉換為哈希值。
用法:
hash = Hash[string.split(‘&’).map { |pair| pair.split(‘=’) }]
例子:在此示例中,我們使用“&”和“=”等分隔符將字符串拆分為鍵值對,然後將它們轉換為哈希值。
# Define a custom string format
string = "name=John&age=30&city=New York"
# Convert custom string to a hash
hash = Hash[string.split('&').map { |pair| pair.split('=') }]
puts hash
# Output: {"name"=>"John", "age"=>"30", "city"=>"New York"}
輸出
{"name"=>"John", "age"=>"30", "city"=>"New York"}
相關用法
- Ruby String轉JSON用法及代碼示例
- Ruby String轉Boolean用法及代碼示例
- Ruby String byteslice用法及代碼示例
- Ruby String chop用法及代碼示例
- Ruby String crypt用法及代碼示例
- Ruby String delete_prefix用法及代碼示例
- Ruby String each_codepoint用法及代碼示例
- Ruby String encoding用法及代碼示例
- Ruby String hex用法及代碼示例
- Ruby StringIO bytes用法及代碼示例
- Ruby StringScanner charpos用法及代碼示例
- Ruby StringScanner get_byte用法及代碼示例
- Ruby StringScanner peek用法及代碼示例
- Ruby StringScanner post_match用法及代碼示例
- Ruby StringScanner rest_size用法及代碼示例
- Ruby StringScanner scan_until用法及代碼示例
- Ruby StringScanner skip_until用法及代碼示例
- Ruby StringScanner terminate用法及代碼示例
- Ruby String bytes用法及代碼示例
- Ruby String bytesize用法及代碼示例
- Ruby String capitalize()用法及代碼示例
- Ruby String casecmp用法及代碼示例
- Ruby String center()用法及代碼示例
- Ruby String chars()用法及代碼示例
- Ruby String chomp用法及代碼示例
注:本文由純淨天空篩選整理自abhaystriver大神的英文原創作品 How to convert String to Hash in Ruby?。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。