#golang 文字数をカウントするには?

Posted by kwmt on Wed, Oct 9, 2013

文字数をカウントしたい!

そう思ってすぐ思いついたのは、stringsパッケージのCount関数。

Exampleのあったので、確認のためRunしてみる。

なぜか期待する文字数の +1 になる。srcを見てみたところ、+1されてる・・・。なんで?

とツイートしたら、ロブ・パイク先生からお返事頂きました!

でも、あれ? strings#Countの例にあるけど、

これは、3と出力しますよね。

これは、なんで5を出力するの?すべての文字列にempty stringが”含まれてる”んなら、1じゃないのかな!?この答えは、たぶんプログラミング言語の基本な気がする…ちょっと調べてみよう。

とにかく、期待する文字数をカウントするには、Count関数でも使われているunicode/utf8パッケージのRuneCountInString関数を使えばよさそうだ。



comments powered by Disqus