Re: [vim ] 抓取固定符號內資料並刪除固定開頭資料
看板Editor (編輯器(vim/emacs))作者hhs66317 (六子)時間10年前 (2014/06/04 07:45)推噓1(1推 0噓 0→)留言1則, 1人參與討論串2/2 (看更多)
※ 引述《asdrt (安靜)》之銘言:
: example :
: {
: description : "",
: id : "123239293019203dksodsdajsd",
: aaa : true,
: bbb : true,
: ccc : false,
: ddd : true,
: label : "彰化市",
: lookAt : "none"
: }
: ,
: {
: description : "",
: id : "0d5e20ea-d6be-11e3-b258-835bdbdbe6c8",
: aaa : false,
: bbb : true,
: ccc : true,
: ddd : false,
: label : "新化市",
: lookAt : {
: altitude : 3941.32,
: lat : 24.06294152443659,
: lng : 120.5843182509465,
: zoom : 14
: }
: }
: ,
: 以下重複 loop ..
: 有的有 lookat 後面那些資訊 有些沒有 ~
: 我想抓取 {} 裡面的資訊
: 但是只想要抓取 id & lable 這兩行
: 變成像是 excel
: id lable
: 123123123112 彰化市
: 123123990123 某某某
: ..
: .
: 等
: 這樣有可能可以做到嗎?
: 因為不是固定的行距範圍內抓取 所以有點困擾
: 還是說可以用其他編輯軟體像是notepad++ or Ultraeditor ?
: 感謝幫忙
這種需求,我用VIM可以按以下操作達到目的。。
第一步:
:g/^id/norm j4ddkJ
第二步:
:g!/^id/d
第三步:
:%s/^id : "\([^"]\+\)",label : "\([^"]\+\)",/\1 \2/g
OK,進行到這里,主體工作已經完成,在文件首行插入表頭。。
ggOid lable
最后用vim的文字對齊類插件,對齊下就OK了
BTW,第三步可以修改為:
:%s/^id : "\([^"]\+\)",label : "\([^"]\+\)",/"\1","\2"/g
這樣的話,將文件存儲為csv文件就可以在excel中直接查看了。。
--
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.168.34.146
※ 文章網址: http://www.ptt.cc/bbs/Editor/M.1401839130.A.23F.html
推
07/04 04:28, , 1F
07/04 04:28, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Editor 近期熱門文章
PTT數位生活區 即時熱門文章