各リストを一括で処理するため、map関数を覚えます。
mapの第1引数に、処理対象のリスト、
第2引数に評価式を書きます。
前回使ったテキストを使います。
:call map(a,'"ABCDE " . v:val') :echo a
v:valには、リストaの各要素が入ります。
リストaの内容は書き換えられていますので、このままsetlineしてテキストを置き換えます。
:call setline("w0w$",a)
置き換わりました。
次は先ほどとは逆に、各行頭につけた”ABCDE “を、substituteを使って削除してみます。
:call map(a,'substitute(v:val,"ABCDE ","","")') :echo a
リストaが置換されたので、バッファ上のテキストと置き換えます。
:call setline("w0w$",a)
元に戻りました。
コメント