App-digitdemog
view release on metacpan or search on metacpan
my %S3 ; # @ { $S3{ F } } ã«ãã£ã¦ãåå²è¡¨ã§é »åº¦ F åç¾ãã è¡çªå·éåã®å¤ L (%S2ã®æã¤å¤)ãåç
§ã§ããããã«ããã
my %mark ; # $mark{ L } ãããªãªããããªãªãä»ããã ( -. ã§ä½¿ãã)
my %Gs ; # @{ $G { $v } { $pos } [ 0 or 1 ] } ã§ è¡ã®å
·ä½ä¾ãæ ¼ç´ã ( -g ã§ä½¿ãã)
my $maxlen = 0 ; # æååã®æå¤§é·
my $eol = "EOL" . int rand 8 ; # åè¡ã®çµããã示ãã## saikoro -g10,3 ã§ãããã試ããã
@e = map { decode_utf8 $_ } @e unless $optu0 ;
unshift @e , "$eol\$" ; # æ£è¦è¡¨ç¾ãã¿ã¼ã³ç¾¤ã« $eol ã æå㫠追å ã # ãè¡æ«ãã¯é »åº¦ãå¤ãã®ã§æåã«æã£ã¦ããã
#push @e , "$eol\$" ; # æ£è¦è¡¨ç¾ãã¿ã¼ã³ç¾¤ã« $eol ã æå¾ã« 追å ã# ããã¯ãunshift ã§ã push ã§ãè¯ãã
my @eqr ; # ãe ãqrããã ãã«ããåä»ããã
my @exu ; # ãeã«ããã¦ãã¨ã¹ã±ã¼ã(escape)ãã¦ã¦ãã³ã¼ã(unicode)ã§è¡¨ããé¨åããããã«ããåä»ãã
for ( 0 .. $#e ) {
my $eout = $e[$_] =~ s/#.*$//r ; # æ£è¦è¡¨ç¾ã§ãã³ã¡ã³ã#ã®é¨åã¯é¤å»ããã
my @F = split /([[:^ascii:]])/o , $eout , 0 ; # ãã¿ã¼ã³ã§åã£ãæå¾ã¯ç©ºæååãªãåãè½ã¨ãããã®0
grep { $_ = (sprintf '\x{%02X}', ord $_ ) if m/[[:^ascii:]]/ } @F ;
my $p = join '' , @F ;
$eqr [ $_ ] = qr/$p/ ; # ãããããæ£è¦è¡¨ç¾ã¨ãã¦å
ã«ã³ã³ãã¤ã«ãããã¨ã§é«éåã
push @exu , $p ;
}
# split ã§å²ãããã®ãã¿ã¼ã³ã®è¨å®ã
( run in 0.532 second using v1.01-cache-2.11-cpan-88abd93f124 )