Array

last-modified: 17th/June/'01;
since: 1st/June/2001;

$B$$$^$^$G$OJQ?t$O$R$H$D$NCM$7$+BeF~$G$-$^$;$s$G$7$?!#$3$l$r(B$B%9%+%i!$B$H8F$S$^$9!#0lJ}!"%9%+%i!$B%j%9%H(B$B$H8F$S$^$9!#%j%9%H$,BeF~$5$l$F$$$kJQ?t$O%9%+%i!$BG[NsJQ?t(B$B$H8F$S!"%9%/%j%W%H$G$O(B @ $B$+$i;O$^$j$^$9!#%3%s%T%e!<%?%W%m%0%i%`$G$OIT2D7g$JLr3d$r1i$8$^$9!#(B

$Bprint $BH!?t$N0z?t$,%j%9%H$K$J$C$F$$$^$9!#(B

print ("Hello, world!", "\n");

$B%j%9%H$N3g8L$O>JN,$G$-$^$9$,!"$[$H$s$I$N>l9g$O$D$1$F$*$$$?$[$&$,L5Fq$G$7$g$&!#@hello $B$K%j%9%H(B ("Hello, world!", "\n") $B$,BeF~$5$l$F$$$^$9!#(B

@hello = ("Hello, world!", "\n");
print "@hello";

$B0zMQId$,Fs=E0zMQId$K$J$C$F$$$k$N$GJQ?tE83+$5$l!"G[Ns$KBeF~$5$l$?%j%9%H$,=PNO$5$l$^$9!#(B

$BK\9F$G$OG[Ns$H!"$=$N=q$-2<$7I=8=$G$"$k%j%9%H$KIU$$$F>R2p$7$^$9!#$J$*!"G[Ns$d%j%9%H$N8D!9$N%9%+%i!$BMWAG(B$B$H8F$S$^$9!#!J>\$7$/$O(B$BA0@a(B$B$r;2>H$/$@$5$$!#!K(B

$B<+:n(B grep

$B$H%Q%?!<%s$rF~NO$7$F!"%U%!%$%kFb8!:w$r9T$$$^$9!#(B

$B

% chmod +x grep.pl
% ./grep.pl PATTERN FILENAME FILENAME FILENAME

PATTERN $B$K$O%Q%?!<%s%^%C%A$9$k@55,I=8=$rF~$l$F$/$@$5$$!#(B FILENAME $B$K$O8!:wBP>]$N%U%!%$%kL>$rF~$l$F$/$@$5$$!#=>$C$F!"%3%^%s%I%i%$%s0z?t$O:GDcFs8D0J>e$K$J$j$^$9!#(B

Perl $B$G$O!"%3%^%s%I%i%$%s0z?t$O!"G[Ns(B @ARGV $B$KC_$($i$l$^$9!#=>$C$F!"G[Ns(B @ARGV $B$NMWAG$O

@ARGV[0] = PATTERN;
@ARGV[1] = FILENAME;
@ARGV[2] = FILENAME;
@ARGV[3] = FILENAME;

Perl $B$G$OG[Ns$N%5%$%:$O<+F0E*$KD4@0$5$l$k$N$G!";vA0$K@k8@$7$F$*$/I,MW$O$"$j$^$;$s!#(B

grep.pl>>

 1:
 2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
#!/usr/bin/perl
#$B>e$N9T$G$O!"(B Perl $B$N%Q%9$r5-=R$7$F$/$@$5$$!#(B
if (@ARGV < 2) {
  print "NO FILE!\n";
  exit;
} else {
  $pattern = shift(@ARGV);
  print "@ARGV\n";
  foreach $filename (@ARGV) {
    open(SEARCH, $filename);
    $counts = 0;
    while ($line = <SEARCH>){
      if($line =~ /$pattern/){
        $counts++;
        print "$filename($counts): $line\n";
      }
    }
    push(@score,$counts);
    close(SEARCH);
  }
  print "$B%Q%?!<%s!'(B", $pattern, "\n";
  print "$B%U%!%$%kL>!'(B", "@ARGV", "\n";
  print "$B%+%&%s%H?t!'(B @score\n";
}

3, 7, 9, 18 $B9TL\$KCmL\$7$F$/$@$5$$!#$=$l$>$lG[NsFCM-$NLsB+$G$9!#(B

[$B@bL@(B]

$BK\@a$O$^$@:n@.ESCf$G$9!#@bL@$r$b$&>/$7J,$+$j$d$9$/$7$?$$$H;W$$$^$9!#$40U8+!&$446A[$r$*4s$;$/$@$5$$!#(B

foreach $B%k!<%W(B

foreach $BJ8$OG[Ns$N7+$jJV$7$KMQ$$$^$9!#(B

foreach $value (@array) {
  $B%V%m%C%/(B
}

@array $B$NBh0lMWAG$+$i=gHV$KJQ?t(B $value $B$KBeF~$7!"%V%m%C%/Fb$r

@value $B$O>JN,$G$-$^$9$,!">JN,$7$?>l9g$O!"I8=`JQ?t(B $_ $B$,Be$o$j$K;H$o$l$^$9!#(B

for $B%k!<%W!"(B while $B%k!<%W$J$I!"B>$N7+$jJV$7@)8f9=B$$G$bl9g$O(B foreach $B%k!<%W$,JXMx$G$9!#(B

# for $B%k!<%W$G$N

$BG[NsA`:n(B

$B%9%/%j%W%H$r:n$C$F$$$k$H!"G[Ns$KMWAG$r2C$($?$j!"l9g$,$"$j$^$9!#$3$N$h$&$JG[NsA`:n$NH!?t$OBt;3MQ0U$5$l$F$$$^$9$,!"$3$3$G$O$=$N0lIt$r>R2p$7$^$9!#(B

reverse

$B%j%9%H$NJB$S=g$r5U$K$7$^$9!#(B

@array = (a, b, c);	#$B%j%9%H%3%s%F%-%9%H(B
@new = reverse(@array);	# @new = (c, b, a)
$value = "string";		#$B%9%+%i!<%3%s%F%-%9%H(B
$new = reverse($value);	# $value = "gnirts"

$B%j%9%H$N5U=g$GMWAG$K;2>H$9$k>l9g$O!"%$%s%G%/%9$rIiCM$K$H$C$F$b7k9=$G$9!#(B

@array = (a, b, c);
	#$array[0] = a, $array[1] = b, $array[2] = c
	#$array[-1] = c, $array[-2] = b, $array[-3] = a

shift, pop

$BG[Ns$N:G=i$+:G8e$NMWAG$rH4$-=P$7$F!";D$j$NMWAG$r5M$a$^$9!#(B

@array = (a, b, c, d);
$value = shift(@array);	#$value = a,  @array = (b, c, d)
$value2 = pop(@array);	#$value2 = d, @array = (b, c)

unshift, push

$BG[Ns$N:G=i$+:G8e$KMWAG$rIU$12C$($^$9!#(B shift, pop $B$H5U$NA`:n$G$9!#(B

@array = (a, b, c, d);
unshift(@array, e, f);	@array = (e, f, a, b, c, d)
push(@array, e, f);	@array = (a, b, c, d, e, f)

splice

shift, pop $B$N3HD%$G$9!#(B

$BG[Ns$NG$0U$N>l=j$+$i!"G$0U8D$NMWAG$rH4$-=P$7!";D$j$NMWAG$r5M$a$^$9!#$^$?!"H4$-=P$9Be$o$j$K!"B>$N%j%9%H$KCV49$9$k$3$H$b2DG=$G$9!#(B

#splice $B$N4pK\=q<0(B
@new = splice(@array, $B%$%s%G%/%9(B, $B8D?t(B, $B%j%9%H(B);
	#@array $B$KBP$7$F!"!V%$%s%G%/%9!W$NMWAG$+$i!V8D?t!WJ,$NMWAG$r!V%j%9%H!W$GCV49$7!"(B
	#$BCV49$5$l$?85$NMWAG$O(B @new $B$KBeF~$5$l$^$9!#(B
#splice $B$NMxMQNc(B
@array_old = @array;
@new = splice(@array, 2, 4, a, b, c);
	#@new = ($array_old[2], $array[3], $array[4], $array_old[5]),
	#@array = ($array_old[0], $array_old[1], a, b, c, $array[6])
#splice $B$NMxMQNc(B
@array = (a, b, c ,d);
@new = splice(@array, 1, 2, e, f);
	#@array = (a, e, f, d), @new = (b, c)

shift, pop, unshift, push $B$O(B splice $B$G$b

[splice $B$H(B shift, pop, unshift, push]
shift $value = shift(@array) $value = splice(@array, 0, 1)
pop $value = pop(@array) $value = splice(@array, $#array, 1)
unshift unshift(@array, a, b) splice(@array, 0, 0, a, b)
push push(@array, a, b) splice(@array, $#array, 0, a, b)

join, split

join $B$O%j%9%H$NMWAG4V$K6h@Z$jJ8;zNs$rA^F~$7$F7k9g$7%9%+%i!split $B$O%9%+%i!join $B$H(B split $B$O5U$NF/$-$r$7$^$9$N$G!"G[Ns$r(B join $B$G7k9g$7$?$"$H$G(B split $B$GG[Ns$KLa$9$3$H$,=PMh$^$9!#(B

#$B!Z(Bjoin $B$N4pK\=q<0![(B
$value = join("$B6h@Z$jJ8;zNs(B", $BG[Ns(B);
#join $B$NMxMQNc(B
$value = join(" ]:[ ", a, b, c);	#$value = "a ]:[ b ]:[ c"
#$B!Z(Bsplit $B$N4pK\=q<0![(B
@array = split(/$B@55,I=8=(B/, $BJ8;zNs(B);
#split $B$NMxMQNc(B
@array = split(/:/, "a ]:[ b ]:[ c");	#@array = ("a ]", "[ b ]", "[ c")
@array = split(/ ]:[ /, "a ]:[ b ]:[ c");	#@array = ("a", "b", "c")

$BNc$($P!"(B split $B$O%+%s%^(B , $B$G6h@Z$i$l$?(B CSV $B%G!<%?$N3F9`$r!"G[NsMWAG$H$7$F

@data = split(/,/, $line);

grep

$B;XDj$5$l$?>r7o$K%^%C%A$9$kMWAG$rA4$FJV$7$^$9!#(B UNIX $B$J$I$G$O$*$J$8$_$G$9!#(B

#$B!Z(Bgrep $B$N4pK\=q<0![(B
@array = grep($B>r7o<0(B, $BG[Ns(B)

$B>r7o<0$K$ODL>o$N!V<0!W$K2C$($F!"(B /$B@55,I=8=(B/ $B$b;H$($^$9!#(B

@return = grep($_ > 5, 3, 2, 8, 4, 1, 6, 7);
	#@array = (8, 6, 7)
@return = grep(/$B$D(B/, "$B$D$A(B", "$B$"$a(B", "$B$[$7(B", "$B$+$o(B", "$B$D$-(B");
	#@array = ("$B$D$A(B", "$B$D$-(B")

$B>r7o<0$O%V%m%C%/$K$7$F$b7k9=$G$9!#(B

@return = grep{
	$B%V%m%C%/(B
}(@array);

sort

$BG[Ns$rJ8;zNs=g$KJB$YBX$($^$9!#(B UNIX $B$J$I$G$O$*$J$8$_$G$9!#(B

#$B!Z(Bsort $B$N4pK\=q<0![(B
@array = sort $BG[Ns(B;

$B%5%V%k!<%A%s$r:n$k$3$H$G!"G$0U$NJB$Y=g$K%=!<%H$G$-$k$N$G$9$,!"$3$3$G$O3d0&$7$^$9!#(B


$B0J>e$GG[Ns$N4pK\E*$JA`:n$K$D$$$F=*N;$7$^$9!#R2p$7$^$9!#%O%C%7%e$H$O!"!VO"A[G[Ns!W$H$b8F$P$l$k$b$N$G$9!#G[Ns$G$OMWAG$O(B 0 $B$+$i;O$^$kHV9f$G;2>H$7$F$$$^$7$?!#$3$NHV9f$O%$%s%G%/%9$H8F$P$l$k$3$H$b$"$j$^$9!#%O%C%7%e$G$O!"HV9f$NBe$o$j$KJ8;zNs$G;2>H$G$-$^$9!#(B

$B0z$-=P$7$KHV9f$,$D$$$F$$$kC=?Z$,G[Ns$G!"L>A0$,$D$$$F$$$kC=?Z$,%O%C%7%e$G$9!#(B

Copyright: SUGAI, Manabu. Since: 2001
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送
FC2> モビット