【原创】大叔经验分享,102lua cjson数字处理成科学计数法

在处理json时,有一个字段是数字并且位数很长,结果被处理为科学计数法

...,"tradeId":101200111072902276000243,...

经过json.decode之后取到的tradeId是1.012001110729e+23

尝试各种方法之后只能通过字符串替换解决,利用正则表达式

if not (string.find(str, '"tradeId"') == nil) then
  str=string.gsub(str, '("tradeId":)(%d+)', '%1"%2"')
end