使用vim快速構建json格式

json的一個特點是可以把所有內容看成是鍵值對的組合,如下所示:

{
	"a":"1",
	"b":"2",
	"c":"3"
}

鍵值對少的時候,可以用編輯器敲出來,而如果鍵值對非常多,幾十上百個,敲出來就非常費勁了,我們假設可以分別獲取到鍵和值的數據:

create_time
creator
modifier
modify_time
comments
customer_type
option_name
live_address
live_city
live_city_code
live_county
live_county_code
live_latitude
live_longitude
live_province
live_province_code
live_town
live_town_code
live_village
live_village_code
mobile
order_number
registration_way
report_date_time
reporter
username
collectors
market_code
market_name
update_date
創建時間
創建人編碼
修改人
修改時間
備註
客戶類型編碼
客戶類型
居住地址
居住市
居住市編碼
居住縣
居住縣編碼
居住緯度
居住經度
居住省
居住省編碼
居住鄉鎮
居住鄉鎮編碼
居住村
居住村編碼
手機號
序號
註冊方式
填報時間
填報人
影子賬號
採集人
市場編碼
市場名稱
更新時間

想要變成如下格式

{
    "create_time":"創建時間"
    "creator":"創建人編碼"
    "modifier":"修改人"
    "modify_time":"修改時間"
    "comments":"備註"
    "customer_type":"客戶類型編碼"
    "option_name":"客戶類型"
    "live_address":"居住地址"
    "live_city":"居住市"
    "live_city_code":"居住市編碼"
    "live_county":"居住縣"
    "live_county_code":"居住縣編碼"
    "live_latitude":"居住緯度"
    "live_longitude":"居住經度"
    "live_province":"居住省"
    "live_province_code":"居住省編碼"
    "live_town":"居住鄉鎮"
    "live_town_code":"居住鄉鎮編碼"
    "live_village":"居住村"
    "live_village_code":"居住村編碼"
    "mobile":"手機號"
    "order_number":"序號"
    "registration_way":"註冊方式"
    "report_date_time":"填報時間"
    "reporter":"填報人"
    "username":"影子賬號"
    "collectors":"採集人"
    "market_code":"市場編碼"
    "market_name":"市場名稱"
    "update_date":"更新時間"
}

首先分別處理鍵和值,使其變成如下格式

"鍵":
"值"

在這裏插入圖片描述
在這裏插入圖片描述

最後將兩個block進行拼接

使用命令

:40,77del | let l=split(@") | 1,38s/$/\=remove(l,0)/

其中40,70和1,38需要根據實際行數情況進行修改
在這裏插入圖片描述
參考:
https://stackoverflow.com/a/10760494

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章