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 =/^(?[^ ]*) - (?[^ ]* [^ ]*) - (?[^ ]*) - (?[^ ]* [^ ]* [^ ]*) - (?[^ ]*) - (?[^ ]*) - (?[^ ]*) - (?[^ ]*) - (?[^ ]*)$/


 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

你可能感兴趣的:(ruby编程)