ãã®è¨äºã¯ abicky.net ã® åã㦠Perl ã§ã³ã¼ããæ¸ãæã«ç¥ã£ã¦ããããã£ãã㨠ã«ç§»è¡ãã¾ãã
Perl ⺠æ£è¦è¡¨ç¾ Perlã®æ£è¦è¡¨ç¾ã®è§£èª¬ã§ãããã®è¨äºãèªãã°ãæ¥å¸¸ã§å©ç¨ããæ£è¦è¡¨ç¾ã®ãã¹ã¦ãçæéã§ãã¹ã¿ã¼ãããã¨ãã§ãã¾ããæ£è¦è¡¨ç¾ã使ãã°ãæååã®éåã表ç¾ãããã¨ãã§ããæ£è¦è¡¨ç¾ã«ãããããæååãæ¤ç´¢ããããç½®æããããããã¨ãã§ãã¾ãã æ£è¦è¡¨ç¾ã使ã£ã¦æååã®éåã表ç¾ã§ãã¾ãããã¨ãã°ãaããaaããaaaãã¨ããä¸ã¤ã®æååãæ£è¦è¡¨ç¾ã§è¡¨ç¾ãã¦ã¿ã¾ããããé£ç¶ããæåã®åæ°ã表ç¾ããæ£è¦è¡¨ç¾ã{}ãã使ã£ã¦æ¬¡ã®ããã«æ¸ããã¨ãã§ãã¾ãã a{1,3} ãaããaaããaaaãã¨ããæååã®éåãã²ã¨ã¤ã®æ£è¦è¡¨ç¾ãa{1,3}ãã§è¡¨ãã¦ãã¾ãã{}ã¯éæå®åã¨å¼ã°ãããã®ã§ãé£ç¶ããæåã表ç¾ãããã¨ãã§ãã¾ãã a aa -> a{1,3} aaa æ£è¦è¡¨ç¾ã®ä¾ãããä¸ã¤ã¿ã¦ã¿ã¾ãããããp1ããq1ããr1ãã¨ããæååã®éåãã²ã¨ã¤ã®æ£è¦è¡¨ç¾ã[pqr]
Perl or Die !!ãã£ã¨Perlã«ã¤ãã¦è©±ãã¾ãããããã®ããã°ã¯ãPerlã«ã¯èå³ããããã©ãã¨ã£ããããè¦ã¤ãããªãã¦é£ã³è¾¼ããªã人åãã«æçãã«èªåã®çµé¨ãå«ãã¦Perlã®é åãä¼ãããã®ã§ãããã¡ããå®éã«Perlã使ããããã«ãªãããã®ææ³ã®è§£èª¬ãè¡ãã¾ãããPerlã¨ããè¨èªã®æåçãªé¢ç½ããããã¦ã¯ç§ãæ¹ãããçç±ã«ã¤ãã¦ãããç¨åº¦è«ççã«èª¬æãããã¨æãã¾ãã ãªãã ããä¸éçã«ããã°ã©ãã³ã°è¨èªãã¯ãããã«å½ãã£ã¦ã ãHello Worldãã¨ããæååãåºåãããã¨ãå°å ¥ã®æåã ã¨ããæ¦å¿µããã£ã¦ã ã¾ã便å©ãªã®ã§ããã«åããã¦ãããã¾ãã ãããHello Worldã®ããã°ã©ã ã§ãã use strict; use warnings; print "Hello World\n"; ãã¾ããªã Hello Worldããã°ã©ã ã®åé ã§åºã¦ãããuse st
ãã¼ã£ã¨ãIDE使ã£ã¦ã¾ãããããããªããã PerlãIDEã§æ¸ãã¦ã人ãã©ãããããããã ãããä½ä½¿ã£ã¦ããã ãã ç§ã¯Linuxã§ãWindowsã§ãVimã使ã£ã¦ã¾ããPerlã£ã¦ãµã¼ãã§ä½¿ãããäºãå¤ããããµã¼ãã ã¨sshã§å ¥ãäºãå¤ãã ããããã¾ãXã®è»¢éãVNCãããã£ã½ãã®ã§ã°ã©ãã£ã«ã«ã«æä½ãã¦ãè¯ããã©ãæ£ç´Perlã®ããã¥ã¡ã³ããããã¹ããã¼ã¹ã ãPerlã§å ¥åè£å®åºæ¥ãã°ã©ãã£ã«ã«ã¨ãã£ã¿ãã¾ãç¡ãã¨æã£ã¦ãã ã§ãç§ãVimä¸ã§ä½¿ã£ã¦ãPerlã®éçºãã200å便å©ã«ããã¹ã¯ãªããããç´¹ä»ã perldoc.vim perldocã¯Perlã®ãªã³ã©ã¤ã³ããã¥ã¢ã«ãªãã ãã©ããããä¸ã ã¿ã¼ããã«ã«æ»ã£ãããã¦å¼ãã¦ãã¨æéã®ãã¹ãscreenã§åå²ãã¦éãã¦ããããã ãã©screenã®ç»é¢é移åãããVimå ã§ã®ã¦ã£ã³ãã¦é移åã®æ¹ãæä½æãçµ±ä¸åºæ¥ã¦ã¦è¯ãã ãã
ã¢ãã³ãª Perl ã®éçºç°å¢ã®æ§ç¯æ¹æ³ ä¸è¬ç㪠OSX ç°å¢ããã³ Linux ç°å¢ã«ããããã¢ãã³ãª Perl éçºç°å¢ã®æ§ç¯æ¹æ³ã«ã¤ãã¦ã¾ã¨ãã¦ã¿ããã perlbrew ã®ã¤ã³ã¹ãã¼ã«perlbrew ãã¤ãããã¨ã«ãããç°¡åã«ææ°çã® Perl5 ãå©ç¨ãããã¨ãã§ããããã«ãªãã perlbrew ããããã% curl -L http://xrl.us/perlbrew | perl - install % ~/perl5/perlbrew/bin/perlbrew init ~/.bashrc (ã¾ã㯠~/.zshrc)ã« source ~/perl5/perlbrew/etc/bashrc ã追è¨ããããããã·ã§ã«ããã¡ããããææ°çã® perl ãã¤ã³ã¹ãã¼ã«ããã% perlbrew install perl-5.12.1 % perlbrew switch pe
以åè¦ã¤ããè³æããããããããªããã£ããªã¨ä¹ ã ã«æ¤ç´¢ãã¦æ¢ãã®ã«å°ãæéåã£ãã®ã§ã¡ã¢ è¨èªã®æ¯è¼å¯¾å¿ã§ææ³è¦ããããããªãã§ä¾¿å©ãããªãããªã¨ åç §: Big Script: PHP, Perl, Python, Ruby, Smalltalk http://hyperpolyglot.wikidot.com/scripting Small Script: Bash, Tcl, Lua, Javascript, IO http://hyperpolyglot.wikidot.com/small Platform: C, C++, Objective C, Java, C# http://hyperpolyglot.wikidot.com/platform Lisp: Common Lisp, Scheme, Clojure, Emacs Lisp http://hyperpolyglo
Perl ⺠åºç¤ææ³ ITã®ç¾å ´ã§Perlãå¿ è¦ã«ãªã£ã¦ãä»åå¼·ãã¦ããã¨ããæ¹ã¯ãããã¾ããã? ä»ã®è¨èªãããç¨åº¦ç¥ã£ã¦ããæ¹ããPerlåºç¤ææ³æéãã¹ã¿ã¼ããèªãã°ãPerlã®ä½¿ãæ¹ã®åºç¤ããã¹ã¿ã¼ãã¦Perlãæ¸ããã¨ãã§ããããã«ãªã£ã¦ãã¾ãã åºç¤ ææ³ãã§ã㯠ææ³ããã§ãã¯ãå³ããããããã«æåã«å¿ ã次ã®2è¡ãæ¸ãããã«ãã¾ãã use strict; use warnings; ãuse strictãã¨ãuse warningsãã¨ãã2è¡ãå ãããã¨ã§äºåã«ææ³ãã§ãã¯ãè¡ãããã®ã§ãã½ã¼ã¹ã³ã¼ããè¨è¿°ããä½æ¥ã¯éããªããã³ã¼ãã®å質ãä¸ããã¾ãã printé¢æ° æååãåºåããã«ã¯printé¢æ°ã使ç¨ãã¾ãã print "Hello world"; Perlã§ã¯æ¨æºé¢æ°ãäºåã«å®ç¾©ããã¦ããé¢æ°ã§æ¬å¼§ãçç¥ãããã¨ãã§ãã¾ãã ã³ã¡ã³ã Perlã®ã³ã¡ã³ãã§
Perl ⺠here Perl5.8以éã«ãããæ¨æºçãªPerlã®æ¸ãæ¹ã解説ãã¾ãã ã¤ã³ã¿ã¼ãããã§æ¤ç´¢ããã¨Perl4ã®ããã®å¤ãè¨è¿°ãããããããã¾ããã¾ãæ¸ç±ãªã©ã®å¤ããPerl4ã®è¨æ³ã§æ¸ããã¦ãã¾ããPerl4ã®è¨æ³ã¯è¤éã«ãªããããééããçã¿ãããã®ã§ããããPerlãæ¸ã人ã¯Perl5ã®ç¾ä»£çãªè¨æ³ã§è¨è¿°ãããã¨ãå¼·ããå§ããã¾ãã strictãã©ã°ãã¨warningsãã©ã°ã (å¿ é ) strictãã©ã°ãã¨warningsãã©ã°ããæå¹ã«ãã¾ãã use strict; use warnings; use strict;ã¨use warnings;ã®ï¼è¡ã¯ã¹ã¯ãªããã®æåã«å¿ ãè¨è¿°ãã¦ãã ããããããã¯Perlã®ææ³ãã§ãã¯ãå³ããããããã®ãã®ã§ããé¢åã ã¨ãã軽ãæ°æã¡ã§ãããè¨è¿°ããªãã¨å¾ã æ¬å½ã«é¢åãªãã¨ã«ãªãã¾ãã use strict;ã¨use wa
2009å¹´09æ13æ¥13:00 ã«ãã´ãªLightweight Languages #perl - utf8::decode()ã§ã¯ãªãEncode::decode_utf8()ã使ãã¹ãçç± é§ç®ã§ãã [ã] Perl ã® utf8 ã¾ããã®ãã¾ããªã æè¿è¯ã使ããã¾ããªããã¨ãããã¤ãã£ãªã ã utf8::decode($text) unless utf8::is_utf8($text); ããããå ´åã¯ãEncode::decode_utf8()ã§ãªãã¨ã 以ä¸ãããããã ããã #!/usr/bin/perl use strict; use warnings; use Encode; use Devel::Peek; for my $bytes ( "\x2F", "\xC0\xAF", "\xE0\x80\xAF", "\xF0\x80\x80\xAF" ) { my $u
ãµãã¨ã¯å½¼å¥³ã®èªå® è¿ããæ¹åå°é§ åã®ã¹ã¼ãã¼ãã¼ã±ããã§å¾ ã¡åãããããã彼女ã¯èªè»¢è»ã§å¾ãã追ãã¤ãã¨è¨ããåã¯å¤§ããªã³ã¤ã³ãã¼ãã³ã°ã¸è»ãåãããç èãä¸æ¬å¸ã£ã¦ããã¹ã¼ãã¼ãã¼ã±ããã¸åããã¨ãã²ã£ãããªãã«ä¸»å©¦çãªå¥³æ§ããã°ãã¡ãããå ¥ãå£ãåºããå ¥ã£ãããã¦ãããæå»ã¯åå¾5æã«ãªããæè¨ããç®ãä¸ããã¨ãå¾ ããã¡ãã£ãããã¨å¤§ãã¦æªã³ãã¦ãªãæ§åã§ãµããæã¶ãã§ãã£ã¦ããã ã礼ã«æçãä½ãã¨ã¯ããããµãã®å®¶ã«ã¯é£æãåå足ãã¦ããªããããããããã¦ã¹ã¼ãã¼ãã¼ã±ããã«å¯ããã¨ã«ãªã£ãããµãã¯éèã³ã¼ãã¼ããç²¾èã³ã¼ãã¼ã¾ã§ãã¾ãã§åªç§ãªã«ã¼ããã«å°ãããããã«ç¡é§ãªãç¹æ¤ãã¦ãã£ãã欲ããé£æãããã¨ã2ç§éç¨åº¦ããããåè¦ããä¸åº¦æã«åã£ããããããããè±èãããè¿·ããã¨ãªãåãæã£ã¦ããã«ã´ã«æ¾ãè¾¼ãã ãæå¾ã«ã¢ã«ã³ã¼ã«é£²æãå·ãããã¦ããæ£ã®åã¸è¡ãã¨ãç§ã飲ãããã¨ã
Perl ⺠ãã使ãé¢æ°ã»ã¢ã¸ã¥ã¼ã« ãã使ç¨ããé¢æ°ã»æ¨æºã¢ã¸ã¥ã¼ã«ã®ä¸è¦§ã§ãããããã®é¢æ°ãè¦ãã¦ããã°ãPerlããã便å©ãªãã®ã«ãããã¨ãã§ãã¾ãã詳細ãªè§£èª¬ã¯é¿ããç°¡åãªãµã³ãã«ãç´¹ä»ãã¦ãã¾ããæ»ãå¤ã®ãããã®ã«ã¤ãã¦ã¯$retã¨ããè¨å·ã§è¡¨ãã¦ãã¾ãã ã¾ãããã使ç¨ããç¹æ®å¤æ°ãæ¨æºã¢ã¸ã¥ã¼ã«ã«ã¤ãã¦ãã解説ãã¦ãã¾ããåé ç®ãããé¢æ°ã®è©³ç´°ã«ããªã³ã¯ãã¦ãã¾ãã®ã§ã便å©ã«ãå©ç¨ãã ããã æ°å¦é¢æ° æååæä½ é åæä½ ããã·ã¥æä½ ãã¡ã¤ã«å ¥åºå ãã¡ã¤ã«ã»ãã£ã¬ã¯ããªæä½ æå»ã»æé ãã®ä»ã®éè¦ãªé¢æ° é¢æ°ã¨ã¢ã¸ã¥ã¼ã«ã®ããã¥ã¡ã³ãã®èª¿ã¹æ¹ ãã使ç¨ããç¹æ®å¤æ° ãã使ç¨ããæ¨æºã¢ã¸ã¥ã¼ã« æ°å¦é¢æ° abs 絶対å¤ãæ±ããã«ã¯absé¢æ°ã使ç¨ãã¾ãã $ret = abs $num; abs(-3)ã¯3ã«ãªãã¾ãã sqrt æ£ã®å¹³æ¹æ ¹ãæ±ããã«ã¯ãsqrté¢æ°ã
åå¶ Date::Simple - ç°¡åãªæ¥ä»ãªãã¸ã§ã¯ãã æ¦è¦Â¶ use Date::Simple ('date', 'today'); # Difference in days between two dates: $diff = date('2001-08-27') - date('1977-10-05'); # Offset $n days from now: $date = today() + $n; print "$date\n"; # uses ISO 8601 format (YYYY-MM-DD) use Date::Simple (); my $date = Date::Simple->new('1972-01-17'); my $year = $date->year; my $month = $date->month; my $day = $date->day;
åå¶ Date::Range - æ¥ä»ã®ç¯å²ãæ±ã æ¦è¦Â¶ use Date::Range; my $range = Date::Range->new($date1, $date2); my $earliest = $range->start; my $latest = $range->end; my $days = $range->length; if ($range->includes($date3)) { ... } if ($range->includes($range2)) { ... } if ($range->overlaps($range2)) { my $range3 = $range->overlap($range2); } foreach my $date ($range->dates) { ... } 説æ¶ æ¥ä»ãæ±ãå ´åãç¹å®ã®æ¥ä»ã ãã§ã¯ãªããæ¥ä»ã®ç¯å²ã®æ
CodeZineç·¨éé¨ã§ã¯ãç¾å ´ã§æ´»èºãããããããã¼ãã¹ã¿ã¼ã«ããããã®ã«ã³ãã¡ã¬ã³ã¹ãDevelopers Summitãããã¨ã³ã¸ãã¢ã®çããã¾ããã¼ã¹ãããããã®ã¤ãã³ããDevelopers Boostããªã©ããã¾ãã¾ãªã«ã³ãã¡ã¬ã³ã¹ãä¼ç»ã»éå¶ãã¦ãã¾ãã
ãµãã¨ã¯å½¼å¥³ã®èªå® è¿ããæ¹åå°é§ åã®ã¹ã¼ãã¼ãã¼ã±ããã§å¾ ã¡åãããããã彼女ã¯èªè»¢è»ã§å¾ãã追ãã¤ãã¨è¨ããåã¯å¤§ããªã³ã¤ã³ãã¼ãã³ã°ã¸è»ãåãããç èãä¸æ¬å¸ã£ã¦ããã¹ã¼ãã¼ãã¼ã±ããã¸åããã¨ãã²ã£ãããªãã«ä¸»å©¦çãªå¥³æ§ããã°ãã¡ãããå ¥ãå£ãåºããå ¥ã£ãããã¦ãããæå»ã¯åå¾5æã«ãªããæè¨ããç®ãä¸ããã¨ãå¾ ããã¡ãã£ãããã¨å¤§ãã¦æªã³ãã¦ãªãæ§åã§ãµããæã¶ãã§ãã£ã¦ããã ã礼ã«æçãä½ãã¨ã¯ããããµãã®å®¶ã«ã¯é£æãåå足ãã¦ããªããããããããã¦ã¹ã¼ãã¼ãã¼ã±ããã«å¯ããã¨ã«ãªã£ãããµãã¯éèã³ã¼ãã¼ããç²¾èã³ã¼ãã¼ã¾ã§ãã¾ãã§åªç§ãªã«ã¼ããã«å°ãããããã«ç¡é§ãªãç¹æ¤ãã¦ãã£ãã欲ããé£æãããã¨ã2ç§éç¨åº¦ããããåè¦ããä¸åº¦æã«åã£ããããããããè±èãããè¿·ããã¨ãªãåãæã£ã¦ããã«ã´ã«æ¾ãè¾¼ãã ãæå¾ã«ã¢ã«ã³ã¼ã«é£²æãå·ãããã¦ããæ£ã®åã¸è¡ãã¨ãç§ã飲ãããã¨ã
ãµãã¨ã¯å½¼å¥³ã®èªå® è¿ããæ¹åå°é§ åã®ã¹ã¼ãã¼ãã¼ã±ããã§å¾ ã¡åãããããã彼女ã¯èªè»¢è»ã§å¾ãã追ãã¤ãã¨è¨ããåã¯å¤§ããªã³ã¤ã³ãã¼ãã³ã°ã¸è»ãåãããç èãä¸æ¬å¸ã£ã¦ããã¹ã¼ãã¼ãã¼ã±ããã¸åããã¨ãã²ã£ãããªãã«ä¸»å©¦çãªå¥³æ§ããã°ãã¡ãããå ¥ãå£ãåºããå ¥ã£ãããã¦ãããæå»ã¯åå¾5æã«ãªããæè¨ããç®ãä¸ããã¨ãå¾ ããã¡ãã£ãããã¨å¤§ãã¦æªã³ãã¦ãªãæ§åã§ãµããæã¶ãã§ãã£ã¦ããã ã礼ã«æçãä½ãã¨ã¯ããããµãã®å®¶ã«ã¯é£æãåå足ãã¦ããªããããããããã¦ã¹ã¼ãã¼ãã¼ã±ããã«å¯ããã¨ã«ãªã£ãããµãã¯éèã³ã¼ãã¼ããç²¾èã³ã¼ãã¼ã¾ã§ãã¾ãã§åªç§ãªã«ã¼ããã«å°ãããããã«ç¡é§ãªãç¹æ¤ãã¦ãã£ãã欲ããé£æãããã¨ã2ç§éç¨åº¦ããããåè¦ããä¸åº¦æã«åã£ããããããããè±èãããè¿·ããã¨ãªãåãæã£ã¦ããã«ã´ã«æ¾ãè¾¼ãã ãæå¾ã«ã¢ã«ã³ã¼ã«é£²æãå·ãããã¦ããæ£ã®åã¸è¡ãã¨ãç§ã飲ãããã¨ã
ReverseHttpé¢ç½ãã§ããã ReverseHttp Tunnel HTTP over HTTP, in a structured, controllable, securable way. Let programs claim part of URL space, and serve HTTP, all by using an ordinary HTTP client library. http://www.reversehttp.net/ ãã åéããããããã®ããä½ãReverseãªã®ãã¨ããé¨åãé常ãã©ã¦ã¶ãããªã¯ã¨ã¹ããéä¿¡ãããããã«å¯¾ããå¿çããµã¼ãããè¿ããã¾ããReverseHttpã¯ãµã¼ãã§ä½ãã¢ã¯ã·ã§ã³ãèµ·ããå ´åã«ããã©ã¦ã¶å´ããã®éç¥ãåä¿¡ãã...ãªãã¦äºãåºæ¥ããããã³ã«ã§ããä»çµã¿ã¯cometã¨ããlong pollã«ä¼¼ãä»çµã¿ã§ããµã¤ãã®demo
ORM ãã¦ã§ãã¢ããªã±ã¼ã·ã§ã³é¢é£ã®ã©ã¤ãã©ãªãªã©ã®ãã¹ãã±ã¼ã¹ãæ¸ãã«ããã£ã¦ã¯ã RDBMS ã¸ã®ã¢ã¯ã»ã¹ãå¿ è¦ã«ãªãã¾ããããããSQLite ã®ãããªã¹ã¿ã³ãã¢ãã¼ã³ã®ãã¼ã¿ãã¼ã¹ã¨æ¯è¼ããã¨ããµã¼ãåãã¼ã¿ãã¼ã¹ã§ãã MySQL ã«æ¥ç¶ãã¦ãã¹ããæ¸ãã®ã¯ãæ¢åã® MySQL ã®æ¨©éè¨å®ããã¼ã¿ãã¼ã¹åãæ°ã«ããå¿ è¦ããã£ããã¨ãããããä¸ä¾¿ã§ããããã§ãMySQL ã®ã¤ã³ã¹ã¿ã³ã¹ããã³ãã©ãªãã£ã¬ã¯ããªã«èªåçæãããã¹ããçµãã£ããåé¤ãã¦ããã Perl ã¢ã¸ã¥ã¼ã« Test::mysqld ãæ¸ãã¾ããããããªæãã§ä½¿ãã¾ãã use DBI; use Test::mysqld; use Test::More; my $mysqld = Test::mysqld->new( my_cnf => { 'skip-networking' => '' }, # TCPæ¥ç¶ã
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãç¥ãã
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}