通过zabbix-api
登录,我得到以下输出:
{"jsonrpc":"2.0","result":"4b79a399f043fa44c5653bee3ecb346d","id":0}
我正在尝试使用上面的代码在ruby中进行解析:
command_out = shell_out(command).stdout.to_s
node.default['zabbix_server']['zabbix_auth'] = command_out.lines.grep(/"(result)":"((\\\"|[^"])*)"/)
我怎么只能抓住"4b79a399f043fa44c5653bee3ecb346d"
?
答案 0 :(得分:0)
您实际上正在处理JSON,它是XML或YAML之类的数据格式。
幸运的是,您可以依赖开发用于解析标准JSON的JSON
gem。
这里是使用方式:
require 'JSON'
my_json = '{"jsonrpc":"2.0","result":"4b79a399f043fa44c5653bee3ecb346d","id":0}'
a = JSON.parse(my_json)
p a['result']
,输出为:
“ 4b79a399f043fa44c5653bee3ecb346d”