Vim の :substitute の \= で除算を記述する

Vim の :substitute では、

" 行末に列数を追加する
:%s/\(.*\)\zs$/\=len(submatch(1))/g


のようにして \= を記述すると以降の文字列を式として評価されます。

[問題]

次のように除算(/) を計算しようとするとうまく動作しません。

:%s/\(.*\)\zs$/\=len(submatch(1))/2/g


これは \= の / が区切り文字として認識されているためです。

[解決]

区切り文字を / 以外で記述します。

" / 以外の文字で区切る
:%s#\(.*\)\zs$#\=len(submatch(1))/2#g


区切り文字は一部の文字を除く任意の1バイト文字を使用することができます。
詳細は以下の記事を参照して下さい。