Perl関連
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
] [
Twitter
]
開始行:
→言語・開発環境
→正規表現
#contents
*一般 [#ebbeadda]
-[[まつもとゆきひろ氏が“幻のPerl6”から学んだ教訓 「OSSの...
-[[Perl vs PHP>http://yusukebe.com/archives/10/03/07/1039...
-[[Moose - Perl5のためのまったく現代的なオブジェクトシス...
--[[Mooseに入門してみたよ>http://perl-mongers.org/2008/05...
--[[初めてのMoose - Mooseのすすめ>http://d.hatena.ne.jp/h...
-[[最新PerlフレームワークArk徹底解剖>http://gihyo.jp/dev/...
-[[Perlがダメな理由>http://d.hatena.ne.jp/ahmok/20090411/...
--とりあえず動くものを作りたいならPHPの方が生産性が高い。...
--Perlは口先だけでは叩かれる文化らしいので、自分の体験を...
-[[今日のCPANモジュール>http://e8y.net/mag/]]
-http://search.cpan.org/
-Active Perl download page
--http://downloads.activestate.com/ActivePerl/Windows/5.8/
-http://perl-users.jp/
-[[Higher-Order Perl(pdf)>http://hop.perl.plover.com/bo...
*入門記事 [#o3712762]
-[[Perl を学ぶとき、真っ先に覚えたいモジュール>http://bay...
-[[Beginning Perl (Wrox)>http://ofps.oreilly.com/titles/9...
-[[Perl基礎文法最速マスター>http://d.hatena.ne.jp/perlcod...
-[[サンプルコードによるPerl入門>http://d.hatena.ne.jp/per...
--[[詳細目次>http://d.hatena.ne.jp/perlcodesample/2008022...
-[[Perl基礎入門>http://www.kent-web.com/perl/index.html]]
-[[とほほのPerl入門>http://www.tohoho-web.com/wwwperl.htm]]
-[[Perl講座[Smart]>http://www.rfs.jp/sb/perl/]]
-[[Essential Perl>http://www.scribd.com/doc/6792/Essentia...
*Tips [#mae1d881]
-[[Perlの食えない事情 - 演算子編>http://akiym.hateblo.jp/...
-[[簡単!たった13行のコードで HTML取得&解析をするPerl...
-[[Perl裏技集>http://www2u.biglobe.ne.jp/~MAS/perl/waza/]]
-$@ 例外を判定するときのlocal指定
-[[現代的なPerlの記述方法一覧>http://d.hatena.ne.jp/perlc...
-[[$_ とスコープ>http://blog.livedoor.jp/dankogai/archive...
-[[http://blog.livedoor.jp/dankogai/archives/51307692.htm...
--メモリを返すかどうかの振る舞いを決めているのが、 perl ...
-[[perl - use CGI; use Encode; # 非英語Webプログラミング3...
--PerlでWebプログラミングする場合の三原則
1. QueryはCGIモジュールで処理する
2. 文字コードはEncodeモジュールで処理する
3. 文字コードを固定できない場合は、QueryまたはPATH-INF...
1. 決め打ちできる場合は、UTF-8にしておく
-[[perl - で全角半角変換をモダンに行う>http://blog.livedo...
-[[もうやらなくていい昔のコーディングテクニック>http://bl...
-[[for(;;)よりforeach()>http://blog.livedoor.jp/dankogai/...
--"Perl Best Practices"でも、読みやすさの観点からCスタイ...
-[[「モダンPerl入門」感想>http://d.hatena.ne.jp/antipop/2...
--本書は、まず7ページ目からいきなり、Perl5のオブジェクト...
-[[クロージャの概念をクラスとの対比でわかりやすく説明する...
--[[perl - Class vs. Closure>http://blog.livedoor.jp/dank...
-[[Perl「言語」初心者がモダンなPerlを高速に学ぶ方法>http:...
--Plaggerのソースを読む
--モダンなPerlコードで書かれた本は殆どない
-[[Perlのリスト操作をRuby風に>http://d.hatena.ne.jp/naoya...
-[[Perlでutf8化けしたときにどうしたらいいか>http://d.hate...
-[[正規表現よりeq||eqのが速い>http://blog.livedoor.jp/dan...
-[[OLEによるWork, iTunesなどの操作サンプル>http://codezin...
-[[use Imager;>http://blog.mag2.com/m/log/0000222814/1085...
--Imagerモジュールによるサムネイル画像の作り方など
-[[万能なnewの書き方>http://blog.livedoor.jp/dankogai/arc...
-[[Regexp::Assembleのススメ>http://blog.livedoor.jp/danko...
-Perl6 は Parrot という環境で実行される。Parrot は Java ...
-[[PerlのAUTOLOAD:http://blog.livedoor.jp/dankogai/archiv...
-[[PugsでPerl6を体験する:http://www9.ocn.ne.jp/~ymt/perl6...
--[[Pugs:http://search.cpan.org/~autrijus/Perl6-Pugs-6.0....
-[[Perl6 Rules(新たな正規表現):http://www9.ocn.ne.jp/~ymt...
*基本的な文法、関数など [#q2747dea]
-[[Perlのリテラル:http://www.rfs.jp/sb/perl/02/02.html]]
-数値計算を整数でやりたいときは use integer;
-user varsとは
--http://www.mnet.ne.jp/~tnomura/vars.html
--use vars は組み込み関数ではなく、use で vars.pm モジュ...
-package:=名前空間 を指定しない場合mainパッケージとみなす
-local修飾子はグローバル変数もしくは複合型(配列やハッシ...
-レキシカル変数
--myキーワードで修飾する。
--local修飾子はつけられない
-グローバル変数
--必ずパッケージ(=名前空間)にヒモづける。
--ourキーワードで修飾する。
--定義側
package MyApp;
use strict;
our $VARIABLE=1;
--参照側
package main;
$MyApp::VARIABLE;
-Module::installのrequires()
requires('Hoge'); Hogeというモジュールが必要。第二引数で...
-[[perl 変数展開 qq qw>http://pub.ne.jp/wakapon/?entry_i...
--qw()は文字列のスペースによるsplit
--qq()は変数をダブルクオートによって囲むのと同じ
-sprintf
my $w =sprintf( '%02d', $i );
-match/replace関数のオプション
i -> case insensitive 大文字小文字を無視する
g -> 毎回評価する
なぜかよく忘れるので…
*PerlでAssertを使うには [#q83b0eef]
-標準機能でやりたい場合
use Test::Harness::Assert;
assert( 条件 )
-参考:http://harapeko.asablo.jp/blog/2006/10/03/546835
*ファイルのオープン/クローズ [#df054c92]
open(IN, $filename );
while (<IN>) {
print $_ ;
}
close(IN);
*ディレクトリから列挙 [#da07d00a]
-普通にやる
opendir(DIR, ".");
while ($file = readdir(DIR)) {
if ($file =~ /<適当なパターン>/ ) {
#適当な作業
}
}
closedir(DIR);
-再帰的にたどる場合
sub prc_all_dir {
my $dir = shift;
#print 'open' . '['. $dir ."]\n";
opendir(DIR, $dir ) or die "can't open directory [$d...
my @entries = readdir( DIR );
closedir(DIR);
for ( @entries ) {
# '.' と '..' はパス
next if $_ eq '.';
next if $_ eq '..';
my $entry = $dir . '/' .$_;
#ディレクトリだったら再帰する
if ( -d $entry ) {
#printf "Dir = %s\n", $entry;
#各ディレクトリ内の処理
prc_all_dir( $entry ); #再帰
}
#ファイルのとき
else {
}
}
}
終了行:
→言語・開発環境
→正規表現
#contents
*一般 [#ebbeadda]
-[[まつもとゆきひろ氏が“幻のPerl6”から学んだ教訓 「OSSの...
-[[Perl vs PHP>http://yusukebe.com/archives/10/03/07/1039...
-[[Moose - Perl5のためのまったく現代的なオブジェクトシス...
--[[Mooseに入門してみたよ>http://perl-mongers.org/2008/05...
--[[初めてのMoose - Mooseのすすめ>http://d.hatena.ne.jp/h...
-[[最新PerlフレームワークArk徹底解剖>http://gihyo.jp/dev/...
-[[Perlがダメな理由>http://d.hatena.ne.jp/ahmok/20090411/...
--とりあえず動くものを作りたいならPHPの方が生産性が高い。...
--Perlは口先だけでは叩かれる文化らしいので、自分の体験を...
-[[今日のCPANモジュール>http://e8y.net/mag/]]
-http://search.cpan.org/
-Active Perl download page
--http://downloads.activestate.com/ActivePerl/Windows/5.8/
-http://perl-users.jp/
-[[Higher-Order Perl(pdf)>http://hop.perl.plover.com/bo...
*入門記事 [#o3712762]
-[[Perl を学ぶとき、真っ先に覚えたいモジュール>http://bay...
-[[Beginning Perl (Wrox)>http://ofps.oreilly.com/titles/9...
-[[Perl基礎文法最速マスター>http://d.hatena.ne.jp/perlcod...
-[[サンプルコードによるPerl入門>http://d.hatena.ne.jp/per...
--[[詳細目次>http://d.hatena.ne.jp/perlcodesample/2008022...
-[[Perl基礎入門>http://www.kent-web.com/perl/index.html]]
-[[とほほのPerl入門>http://www.tohoho-web.com/wwwperl.htm]]
-[[Perl講座[Smart]>http://www.rfs.jp/sb/perl/]]
-[[Essential Perl>http://www.scribd.com/doc/6792/Essentia...
*Tips [#mae1d881]
-[[Perlの食えない事情 - 演算子編>http://akiym.hateblo.jp/...
-[[簡単!たった13行のコードで HTML取得&解析をするPerl...
-[[Perl裏技集>http://www2u.biglobe.ne.jp/~MAS/perl/waza/]]
-$@ 例外を判定するときのlocal指定
-[[現代的なPerlの記述方法一覧>http://d.hatena.ne.jp/perlc...
-[[$_ とスコープ>http://blog.livedoor.jp/dankogai/archive...
-[[http://blog.livedoor.jp/dankogai/archives/51307692.htm...
--メモリを返すかどうかの振る舞いを決めているのが、 perl ...
-[[perl - use CGI; use Encode; # 非英語Webプログラミング3...
--PerlでWebプログラミングする場合の三原則
1. QueryはCGIモジュールで処理する
2. 文字コードはEncodeモジュールで処理する
3. 文字コードを固定できない場合は、QueryまたはPATH-INF...
1. 決め打ちできる場合は、UTF-8にしておく
-[[perl - で全角半角変換をモダンに行う>http://blog.livedo...
-[[もうやらなくていい昔のコーディングテクニック>http://bl...
-[[for(;;)よりforeach()>http://blog.livedoor.jp/dankogai/...
--"Perl Best Practices"でも、読みやすさの観点からCスタイ...
-[[「モダンPerl入門」感想>http://d.hatena.ne.jp/antipop/2...
--本書は、まず7ページ目からいきなり、Perl5のオブジェクト...
-[[クロージャの概念をクラスとの対比でわかりやすく説明する...
--[[perl - Class vs. Closure>http://blog.livedoor.jp/dank...
-[[Perl「言語」初心者がモダンなPerlを高速に学ぶ方法>http:...
--Plaggerのソースを読む
--モダンなPerlコードで書かれた本は殆どない
-[[Perlのリスト操作をRuby風に>http://d.hatena.ne.jp/naoya...
-[[Perlでutf8化けしたときにどうしたらいいか>http://d.hate...
-[[正規表現よりeq||eqのが速い>http://blog.livedoor.jp/dan...
-[[OLEによるWork, iTunesなどの操作サンプル>http://codezin...
-[[use Imager;>http://blog.mag2.com/m/log/0000222814/1085...
--Imagerモジュールによるサムネイル画像の作り方など
-[[万能なnewの書き方>http://blog.livedoor.jp/dankogai/arc...
-[[Regexp::Assembleのススメ>http://blog.livedoor.jp/danko...
-Perl6 は Parrot という環境で実行される。Parrot は Java ...
-[[PerlのAUTOLOAD:http://blog.livedoor.jp/dankogai/archiv...
-[[PugsでPerl6を体験する:http://www9.ocn.ne.jp/~ymt/perl6...
--[[Pugs:http://search.cpan.org/~autrijus/Perl6-Pugs-6.0....
-[[Perl6 Rules(新たな正規表現):http://www9.ocn.ne.jp/~ymt...
*基本的な文法、関数など [#q2747dea]
-[[Perlのリテラル:http://www.rfs.jp/sb/perl/02/02.html]]
-数値計算を整数でやりたいときは use integer;
-user varsとは
--http://www.mnet.ne.jp/~tnomura/vars.html
--use vars は組み込み関数ではなく、use で vars.pm モジュ...
-package:=名前空間 を指定しない場合mainパッケージとみなす
-local修飾子はグローバル変数もしくは複合型(配列やハッシ...
-レキシカル変数
--myキーワードで修飾する。
--local修飾子はつけられない
-グローバル変数
--必ずパッケージ(=名前空間)にヒモづける。
--ourキーワードで修飾する。
--定義側
package MyApp;
use strict;
our $VARIABLE=1;
--参照側
package main;
$MyApp::VARIABLE;
-Module::installのrequires()
requires('Hoge'); Hogeというモジュールが必要。第二引数で...
-[[perl 変数展開 qq qw>http://pub.ne.jp/wakapon/?entry_i...
--qw()は文字列のスペースによるsplit
--qq()は変数をダブルクオートによって囲むのと同じ
-sprintf
my $w =sprintf( '%02d', $i );
-match/replace関数のオプション
i -> case insensitive 大文字小文字を無視する
g -> 毎回評価する
なぜかよく忘れるので…
*PerlでAssertを使うには [#q83b0eef]
-標準機能でやりたい場合
use Test::Harness::Assert;
assert( 条件 )
-参考:http://harapeko.asablo.jp/blog/2006/10/03/546835
*ファイルのオープン/クローズ [#df054c92]
open(IN, $filename );
while (<IN>) {
print $_ ;
}
close(IN);
*ディレクトリから列挙 [#da07d00a]
-普通にやる
opendir(DIR, ".");
while ($file = readdir(DIR)) {
if ($file =~ /<適当なパターン>/ ) {
#適当な作業
}
}
closedir(DIR);
-再帰的にたどる場合
sub prc_all_dir {
my $dir = shift;
#print 'open' . '['. $dir ."]\n";
opendir(DIR, $dir ) or die "can't open directory [$d...
my @entries = readdir( DIR );
closedir(DIR);
for ( @entries ) {
# '.' と '..' はパス
next if $_ eq '.';
next if $_ eq '..';
my $entry = $dir . '/' .$_;
#ディレクトリだったら再帰する
if ( -d $entry ) {
#printf "Dir = %s\n", $entry;
#各ディレクトリ内の処理
prc_all_dir( $entry ); #再帰
}
#ファイルのとき
else {
}
}
}
ページ名: