1. 程式人生 > >在線處理json

在線處理json

post block 變量 edate 代碼實現 ref 工作 -m 點擊

起因

接到一個查詢、導出用戶賬號映射另一個平臺用戶名密碼的工作。

初看之下不適合寫程序實現,因為是臨時且唯一的任務,界定一個任務適不適合編寫一個程序去實現取決到兩點:

  1. 是否是重復任務
  2. 編程實現耗時是否大於手動處理耗時

如果是重復任務盡量使用程序實現,一勞永逸,但如果手動實現很簡單程序實現很復雜,那就得考慮一下是否值得去做了,而如果是臨時任務,只用一次,那基本上就是手動操作就可以,但是其中的某些環節可以做一些工具那就去做。我這次的任務就是如此。

需求

其中一步是從查詢的json數據中提取出用戶名並統一配置映射的用戶名密碼,數據格式為:

{
    "ok":true,
    "data"
:{ "page":0, "size":30, "content":[ { "id":1, "user":{ "username":"測試1", "phone":"11111111111" }, "createDate":"2020-12-23" }, ... ]
} }

要在這段json數據中提取出username 並按格式輸出就可以了,這時候就可以考慮使用工具實現,實現方法有很多,我用js實現了一個,帶界面的操作起來方便一點,如圖:
技術分享圖片

  1. 輸入原始json
  2. 定義提取規則(以"/"作為路徑分隔,數組使用“*”)
  3. 定義輸出模板(提取的內容以變量“$xx”代替)
  4. 點擊處理並復制,在輸出內容裏就是處理後的數據,並且已復制

實現

  1. 把輸入json字符串的轉為json對象
  2. 根據規則循環解析,這裏用遞歸實現了循環,對規中的“*”做了特殊處理
  3. 取到規則的結尾把內容替換掉模板中的“$xx”,記錄到輸出中
  4. 最後把所有內容輸出並使用js代碼實現選中-復制。
    代碼太長就不放了,放一個工具的鏈接,有需要的去查看源碼就行了。
    在線json處理小工具

推薦一下

簡頁--簡由心,頁由己

在線處理json