dth8312 2018-11-21 04:23
浏览 50
已采纳

如何在GJSON中循环切片

How to looping range or regex #[1 - 12] to display based # in Library GJSON gjson library

example like this, I have picture json in below :

enter image description here

and I have try to looping like below

tempPayments:="Envelope.Body.GetCustomReportResponse.GetCustomReportResult.ContractSummary.PaymentCalendarList.PaymentCalendar."
resultPriod1 := gjson.Get(jsonString,tempPayments + "#.Date")
for _, datePriod := range resultPriod1.Array() {
    println(datePriod[1].String())
}

how to I can display result between range [1-10] ,in "#" ?

  • 写回答

1条回答 默认 最新

  • doutu3352 2018-11-21 08:15
    关注

    Result.Array() converts the current result to a slice of Result ([]Result). Hence, you can just take a slice for your desired range. e.g. resultPriod.Array()[0:12] to get the first 12 elements.

    Take this simplified version as an example:

    func main() {
    
        jsonString := `
    {
        "PaymentCalendarList": {
            "PaymentCalendar": [
                {"ContractSubmitted": 10,
                 "Date": "2018-01-01T01:01:01"},
                {"ContractSubmitted": 20,
                 "Date": "2018-01-01T02:02:02"},
                {"ContractSubmitted": 30,
                 "Date": "2018-01-01T03:03:03"}
                {"ContractSubmitted": 40,
                 "Date": "2018-01-01T04:04:04"}
                {"ContractSubmitted": 50,
                 "Date": "2018-01-01T05:05:05"}
            ]
        }
    }`
    
        tempPayments := "PaymentCalendarList.PaymentCalendar."
        resultPeriod := gjson.Get(jsonString, tempPayments+"#.Date")
    
        # Take the first 3 results
        for _, datePeriod := range resultPeriod.Array()[0:3] {
            fmt.Println(datePeriod)
        }
    
    }
    

    Playground

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止
  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的
  • ¥15 全志H618ROM新增分区
  • ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译