ºÇ½ª¹¹¿·¡§ masasyou1990 2012ǯ05·î13Æü(Æü) 12:01:21ÍúÎò
Perl¤ÎTips¡ÚÌܼ¡¡Û
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
ÊÑ¿ô $a ¤È $b ¤ÎÆâÍƤòÉáÄ̤˸ò´¹¤¹¤ë¤³¤È¤ò¹Í¤¨¤ë¤È¡¢
ÇÛÎó¤ÎÍ×ÁǤθò´¹¤âƱÍͤˤǤ¡¢@test ¤Î1¸ÄÌܤÈ2¸ÄÌܤò¸ò´¹¤¹¤ë¾ì¹ç¤Ï¡¢
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
$tmp = $a;¤È¤¤¤¦¥À¥µ¤¤Ãæ´ÖÊÑ¿ô $tmp ¤òºîÀ®¤·¤¿¤¯¤Ê¤ë¤¬¡¢Perl¤À¤È¤³¤ì¤¬»×¤¤¤Ã¤¤ê´Êñ¤Ë¡¢
$a = $b;
$b = $tmp;
($a,$b) = ($b,$a);¤ÇºÑ¤à¡£
ÇÛÎó¤ÎÍ×ÁǤθò´¹¤âƱÍͤˤǤ¡¢@test ¤Î1¸ÄÌܤÈ2¸ÄÌܤò¸ò´¹¤¹¤ë¾ì¹ç¤Ï¡¢
($test[0], $test[1]) = ($test[1], $test[0]);¤È½ñ¤±¤Ð¤Ç¤¤ë¡£
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤ÊÑ¿ô¤Ë¤Ï¡¢¤¤¤Ã¤¿¤¤²¿¤¬Æþ¤Ã¤Æ¤¤¤ë¤Î¤À¤í¤¦¤«¡©
¤½¤ì¤ò³Î¤«¤á¤ë¤¿¤á¤Î¥×¥í¥°¥é¥à(kakunin.pl)¤¬°Ê²¼¤È¤Ê¤ë¡£
¤Ç¤Ï¡¢½é´ü²½¤·¤Æ¤¤¤Ê¤¤ÊÑ¿ô nazo2 ¤Î¾ì¹ç¤Ï¤É¤¦¤À¤í¤¦¤«¡£nazo2 ¤Ë "nani" ¤È¤¤¤¦Ê¸»ú¤ò·ë¹ç¤¹¤ë¤È¡¢$kotae2 ¤Ï¡¢"nani" ¤È¤Ê¤ë¡£¤¹¤Ê¤ï¤Á¡¢nazo2 ¤Ë¤Ï¡¢""¡Ê¤Ä¤Þ¤ê¡¢¶õʸ»úÎó¡Ë¤¬Æþ¤Ã¤Æ¤¤¤¿¤Î¤À¡£
¼Â¤Ï¡¢½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤ÊÑ¿ô¤Ï¡¢
ÊäÂ
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
¤½¤ì¤ò³Î¤«¤á¤ë¤¿¤á¤Î¥×¥í¥°¥é¥à(kakunin.pl)¤¬°Ê²¼¤È¤Ê¤ë¡£
#! /usr/bin/perl # kakunin.pl $kotae1 = $nazo1 + 1; print "$kotae1\n"; $kotae2 = $nazo2."nani"; print "$kotae2\n";¼Â¹Ô·ë²Ì
$./kakunin.pl½é´ü²½¤·¤Æ¤¤¤Ê¤¤ÊÑ¿ô nazo1 ¤Ë 1 ¤ò²Ã¤¨¤¿¾ì¹ç¡¢$kotae1 ¤Ï¡¢1¤È¤Ê¤ë¡£¤Ä¤Þ¤ê¡¢nazo1 ¤È¤¤¤¦ÊÑ¿ô¤Ë¤Ï¡¢0 ¤¬Æþ¤Ã¤Æ¤¤¤¿¤³¤È¤Ë¤Ê¤ë¡£
1
nani
¤Ç¤Ï¡¢½é´ü²½¤·¤Æ¤¤¤Ê¤¤ÊÑ¿ô nazo2 ¤Î¾ì¹ç¤Ï¤É¤¦¤À¤í¤¦¤«¡£nazo2 ¤Ë "nani" ¤È¤¤¤¦Ê¸»ú¤ò·ë¹ç¤¹¤ë¤È¡¢$kotae2 ¤Ï¡¢"nani" ¤È¤Ê¤ë¡£¤¹¤Ê¤ï¤Á¡¢nazo2 ¤Ë¤Ï¡¢""¡Ê¤Ä¤Þ¤ê¡¢¶õʸ»úÎó¡Ë¤¬Æþ¤Ã¤Æ¤¤¤¿¤Î¤À¡£
¼Â¤Ï¡¢½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤ÊÑ¿ô¤Ï¡¢
- ¿ôÃͤȤ·¤Æ¤ß¤¿¾ì¹ç¤Ï0¤È¤·¤Æ¤Õ¤ë¤Þ¤¤
- ʸ»úÎó¤È¤·¤Æ¤ß¤¿¾ì¹ç¤Ï""¤È¤·¤Æ¤Õ¤ë¤Þ¤¦
$nazo = undef;¤È¤¤¤¦¤è¤¦¤Ë¼«Ê¬¤Ç½ñ¤¤¤Æ»È¤¦¤³¤È¤â²Äǽ¤Ç¤¢¤ë¡£
ÊäÂ
- ʸ»úÎó¤ò·ë¹ç¤¹¤ë±é»»»Ò¤Ï¡¢ ¡Ö.¡×¡Ê¥Ô¥ê¥ª¥É¡Ë¤òÍѤ¤¤ë¡£
$first_name = "Taro";
$last_name = "Tanaka";
$full_name = $first_name . " " . $last_name; #̾Á°¤ÈÉÄ»ú¤ò1ʸ»úʬ¶õ¤±¤Æ·ë¹ç
print "My name is $full_name.\n";
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
perl¤Ë¤Ï¾Êά¤ÎÈþ³Ø¤È¤¤¤¦¤â¤Î¤¬¤¢¤ê¡¢¤¤¤í¤¤¤í¤Ê²Õ½ê¤ÇÊÑ¿ô̾¤ò¾Êά¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡£
¾Êά¤·¤¿¾ì¹ç¤Ï¡¢$_ ¤ò»ØÄꤷ¤¿¤â¤Î¤È¤ß¤Ê¤µ¤ì¤ë¡£
ɸ½àÆþÎϤò½ÐÎϤ¹¤ë¥×¥í¥°¥é¥à¤ÇÀâÌÀ¤¹¤ë¡£
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
¾Êά¤·¤¿¾ì¹ç¤Ï¡¢$_ ¤ò»ØÄꤷ¤¿¤â¤Î¤È¤ß¤Ê¤µ¤ì¤ë¡£
ɸ½àÆþÎϤò½ÐÎϤ¹¤ë¥×¥í¥°¥é¥à¤ÇÀâÌÀ¤¹¤ë¡£
while(<STDIN>){ print; # printʸ¤Ç²¿¤â»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢$_ ¤ÎÃæ¿È¤¬½ÐÎϤµ¤ì¤ë }¤³¤Î¥×¥í¥°¥é¥à¤Ï¡¢¼¡¤Î¤è¤¦¤Ë½ñ¤¤¤Æ¤â¤Þ¤Ã¤¿¤¯Æ±¤¸¤Ç¤¢¤ë¡£
while($_ = <STDIN>){ print $_; # printʸ¤Ç²¿¤â»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢$_ ¤ÎÃæ¿È¤¬½ÐÎϤµ¤ì¤ë }¤³¤ì¤é¤«¤é¡¢°Ê²¼¤Î¤³¤È¤¬¤ï¤«¤ë¡£
- print¤Ç½ÐÎϤ¹¤ë¤â¤Î¤ò¾Êά¤¹¤ë¤È¡¢$_ ¤ÎÃæ¿È¤¬½ÐÎϤµ¤ì¤ë
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
¥×¥í¥°¥é¥à¤ÎÀèƬ¤Ç¡¢
¶ñÂÎŪ¤Ë¤Ï¡¢
¤Ê¤É¤¬¤¢¤ë¡£¡Ê¤³¤ì°Ê³°¤Ï¡¢¤³¤Á¤é¤ò»²¾È¡Ë
ºÇ¸å¤Î$0¤Ï¡¢¡Ö¤³¤Î·ë²Ì¤Ï test.pl ¤Ë¤è¤Ã¤ÆÆÀ¤é¤ì¤¿¤â¤Î¤Ç¤¹¡×¤Ê¤É¤È¸À¤¦¤è¤¦¤Ë¡¢
¥×¥í¥°¥é¥à̾¤ò½ÐÎϤ¹¤ë¤È¤¤Ë»È¤¨¡¢¤½¤Î¥×¥í¥°¥é¥à̾¤òÊѹ¹¤·¤¿¾ì¹ç¤Ç¤â¡¢
¤¤¤Á¤¤¤Á¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ¹¤ë¤¿¤á¤ËÊѹ¹¤·¤¿Éôʬ¤ò½¤Àµ¤·¤Ê¤¯¤Æ¤âºÑ¤à¡£
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
livedoor Wiki´ØÏ¢¥ê¥ó¥¯
use English;¤È½ñ¤¯¤È¡¢¾å½Ò¤·¤¿$_¤Ê¤É¤ÎÆüì¤ÊÊÑ¿ô¤¬Ê¬¤«¤ê¤ä¤¹¤¤ÊÑ¿ô̾¤ËÊÑ´¹¤µ¤ì¤ë¡£
¶ñÂÎŪ¤Ë¤Ï¡¢
ÆüìÊÑ¿ô | ÊÑ´¹¸å | ÊÑ¿ô¤ÎÀâÌÀ |
$_ | $ARG | ¾ÊάÊÑ¿ô |
$. | $INPUT_LINE_NUMBER ¤Þ¤¿¤Ï $NR | ¸½ºßÆþÎÏÃæ¤Î¹ÔÈÖ¹æ |
$` | $PREMATCH | ¥Þ¥Ã¥ÁÁ° |
$& | $MATCH | ¥Þ¥Ã¥Áʸ»úÎó |
$' | $POSTMATCH | ¥Þ¥Ã¥Á¸å |
$0 | $PROGRAM_NAME | ¸½ºß¼Â¹ÔÃæ¤Î¥×¥í¥°¥é¥à̾ |
ºÇ¸å¤Î$0¤Ï¡¢¡Ö¤³¤Î·ë²Ì¤Ï test.pl ¤Ë¤è¤Ã¤ÆÆÀ¤é¤ì¤¿¤â¤Î¤Ç¤¹¡×¤Ê¤É¤È¸À¤¦¤è¤¦¤Ë¡¢
¥×¥í¥°¥é¥à̾¤ò½ÐÎϤ¹¤ë¤È¤¤Ë»È¤¨¡¢¤½¤Î¥×¥í¥°¥é¥à̾¤òÊѹ¹¤·¤¿¾ì¹ç¤Ç¤â¡¢
¤¤¤Á¤¤¤Á¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ¹¤ë¤¿¤á¤ËÊѹ¹¤·¤¿Éôʬ¤ò½¤Àµ¤·¤Ê¤¯¤Æ¤âºÑ¤à¡£
¥È¥Ã¥×¥Ú¡¼¥¸ -> Perl -> ÊÑ¿ô ´ØÏ¢
livedoor Wiki´ØÏ¢¥ê¥ó¥¯
¤³¤Î¥Ú¡¼¥¸¤Ø¤Î¥³¥á¥ó¥È
3rq89e This is one awesome blog post. Great.