1

連続したテキストのインタビュー記録があります。時々、話している人の名前が書かれています(Aron:、Kalle:、Tomas:など)。コロン(:)(指定した名前)が後に続くすべての名前の前に改行を挿入したいと思います。

これをVIMでスクリプト化して、コマンドを実行したときにテキストファイル全体を調べて、余分な改行を挿入するにはどうすればよいですか?

言い換えれば、私はこれを回したいと思います:

Aron: bla, bla, bla
Kalle: yes, yes, yes

の中へ:

Aron: bla, bla, bla

Kalle: yes, yes, yes
4

2 に答える 2

5

この簡単なコマンドを試してください。

:g/^/pu_
  • g/^/すべての行に一致し、次に以下のexecコマンドを実行します。
  • pu __現在一致している行の後にレジスタ(ブラックホールレジスタ)からのテキストを配置します。

:substitute次のコマンドを使用することもできます。

:%s/$/\r

外部を使用するさらに別のものsed

:%!sed G

すべてのコマンドの長さは同じです。好きなものを選んでください。

于 2012-10-11T00:52:43.910 に答える
0

これを試して

:%s#^\(\w*:\)#\r\1#g

- % : serach in all lines
- s : search and replace command
- # : separators (I perfer '#' to '/')
- \(\w*:\) : grep your required format (Aron:, Kalle:, Tomas: etc.) and store in \1
- \r : for inserting a line
- g : global search and replace
于 2012-10-11T07:13:07.923 に答える