http://www.perlmonks.org?node_id=738601


in reply to Re: Counting number of characters in a string
in thread Counting number of characters in a string

$cnt = @{[$str =~ /(\.)/g]};

Replies are listed 'Best First'.
Re^3: Counting number of characters in a string
by toolic (Bishop) on Jan 23, 2009 at 22:00 UTC
    This does not work for me. I expect the length of the string 'abc' to be 3, but your code returns 0:
    use strict; use warnings; my $str = 'abc'; my $cnt = @{[$str =~ /(\.)/g]}; print "$cnt\n"; __END__ 0

      Remove the backslash, add the "s" modifier. And the parens aren't necessary.

      my $cnt = @{[$str =~ /./sg]};

      Cheaper alternative:

      my $cnt =()= $str =~ /./sg;
      Use the length() function.