ruby中hash转为json

该例子中,用正则表达式解析字符串,然后整合成hash数据结构

代码如下:


require 'json'

text="cdn-node-12 - 31/Oct/2014:12:26:03 +0000 - x.x.x.20 - GET /lo.mp4?d=1 HTTP/1.1 - 200 - 1406284 - ramfs - 123.299 - -"


REGEXP =/^(?<node>[^ ]*) - (?<time_local>[^ ]* [^ ]*) - (?<remote_addr>[^ ]*) - (?<request>[^ ]* [^ ]* [^ ]*) - (?<status>[^ ]*) - (?<body_bytes_sent>[^ ]*) - (?<cached_method>[^ ]*) - (?<request_time>[^ ]*) - (?<upstream_response_time>[^ ]*)$/


 m = REGEXP.match(text)
unless m
return nil
end

record = {}
m.names.each {|name|
if value = m[name]
record[name]=value
end
}




result = record.to_json


puts result
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值