文字列の中から、特定の文字列の出現回数を数える

例えば、

my $str = 'はてなアンテナ、はてなブックマーク、はてなカウンター、はてなダイアリー';

とあったとき、その中の『はてな』の個数を数えたい。

私だと、ぱっと思いつくのは次のコードである。

my $count = $str =~ s!はてな!はてな!g;

ちなみに$strを破壊しても良い。

ふと、どういうのが普通なのか気になった。そう大した問題ではないのだけれど。