Vimで文字数をカウントする方法
タグ: vim / 初版公開: 2013-08-10

もう何処で知ったのか忘れてしまったが、良く使っているのでここに書き下しておく。

vimで文章の文字数をカウントする最も簡単な方法は、以下のexコマンドで空の置換をする方法だと思う。

:%s/.//gn

.は任意の1文字にマッチする正規表現で、gはマッチしたすべての箇所を置換する指示、nは実際には置換を行わないという指示だ。要するにこれは実際には何も置換しない空の置換だ。

vimではsコマンドした直後に置換した文字数が表示されるため、このように空の置換をすることで、文字数と行数がカウントできるというわけだ。

最初の正規表現を\Sにすれば、スペースを除いた文字数をカウントすることもできる。

:%s/\\S//gn

上記のコマンド例は、%sでバッファ全体の文字数をカウントしているが、もちろんビジュアルモードから選択範囲の文字数だけをカウントすることもできる。便利。