如何高效進行一次性的複雜的純文字處理?

時間 2021-06-02 08:33:27

1樓:

盡可能快速的意思就是,最好是用編輯器觀察完文字之後,順手就處理了,不必退出去另外寫個指令碼吧?

檔案不大可以直接用 vim 來做,都很簡單。vim 一般 *nix 平台都有,而且通常都會用吧。

:%s`\v[0-9a-zA-

Z]+[ -]*[0-9a-zA-

Z]*` & `g

:%s` \+` `g

:%s`\v *(

) *`\1`g

思路:先給所有單詞及數字兩邊都加上空格,這裡要考慮到有連字元的單詞和中間有空格的片語,統統視作「乙個單詞」,然後在兩邊加上空格。

把多個空格壓縮為乙個空格。

把標點兩邊的空格刪掉,大致寫一些常用的標點 。:7

,$s`^## .*\zs\n`<

flag

>`g:7

,$sort

u:%s`\(^## .*\)<

flag

>\_.\+\1.*`\1\r&`g

:%s`## .*<

flag

>``g

思路:先把地點和映象位址放到同一行,然後隨便加乙個標記,方便後面的操作。

用 sort 命令排序,並加上 u 引數去重。

經過排序後同地點的位址已經都分到了一起,這時通過貪婪匹配將其分組,然後在組的前面加上地點即可。

:%s`\v^# (.*)`---\r\1\r

---`g

:%s`\(^$\n\)\+`\1`g

:g`\v^---\n.*\n^---`exec

",//-2 w! ".getline

(line

('.')+1

).".yml"

思路:格式化的標題實際上已經為文字分好了組,能用 [range]w 命令把相應的文字另存。

但行數計算麻煩,因此使用 [range]的另乙個方式,通過匹配下乙個查詢。即,第乙個匹配到的^---\n.*\n^--- (當前行),和下乙個匹配的 ^---\n.

*\n^--- 之間的內容。

如何避免一次性畫風

郊狼 這個問題可愛,當然是練啊 水平越高技巧越成熟,翻車的機率越小 如果指的是靈感如尿崩超常發揮,那我祝你每一幅畫都能如此,越來越強,每一幅畫的都比上一幅好! Murmure 我估計大部分人畫畫都這樣過,算是乙個時期?隨著你繪畫水平增長,越來越能抓住人物的特點和區別,就不會有這種事了。你說畫同人不會...

如何一次性通過AICPA考試?

立信USCPA AICPA考試雖然只有四門考試科目,考試科目沒有順序要求,一次可以考1科也可以考2,3科或全科。但是1次考全科不是沒有可能,但是全部通過的可能性不大,短時間備考有壓力,長時間一起備考學習新知識,舊知識就容易遺忘。考AICPA切不要心急,用一句諺語說 心急吃不了熱豆腐 要循序漸進,穩紮...

2020如何一次性過一建

建造師學霸帶你飛 如何一次性過一建!高效的學習方法是必要的!複習順序就是先學管理 經濟 法規 實務,你可以用乙個半月時間來把管理學深刻,學好管理能對接下來的三科很有幫助。20年一建考試已經倒計時啦!所以給大家分享純乾貨內容 1.合理規劃時間 我們都在強調碎片化學習,殊不知在如何利用碎片化時間學習,在...