#! /usr/bin/perl use warnings; use strict; use feature qw{ say }; my $string = "\N{LATIN SMALL LETTER A WITH GRAVE}"; say length $string; # 1 { use bytes; say length $string; # 2 } open my $OUT, '>:utf8', '1' or die $!; print {$OUT} $string; close $OUT; no utf8; open my $IN, '<:utf8', '1' or die $!; my $char = <$IN>; say length $char; # 1 say $char eq $string; # 1 use utf8; open $IN, '<', '1' or die $!; my $bytes = <$IN>; say length $bytes; # 2
utf8 tells Perl that the source code uses UTF-8. length is sensitive to bytes and to the UTF8 flag of its argument.
($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,
In reply to Re^2: how to find the length of any line of file
by choroba
in thread how to find the length of any line of file
by lakshmikant
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |