Perl
このカテゴリーの記事(新着順)
WindowsでActivePerlの環境においての、WWW::Mechanizeのインストール方法。 Spidering Hacks(オライリージャパン)の本に出てくるモジュール、WWW::Mechanize。 WWW::Mechaniz...
日時: 2007年04月21日 06:56
ハッシュや無名ハッシュを使って、サブルーチンに引数を渡し、サブルーチンを呼び出すことが出来る。 -------------------------------------------- #!c:/Perl/bin/Perl.exe -w...
日時: 2007年04月17日 03:51
ハッシュだけでなく、サブルーチンや配列もリファレンスを作ることが出来る。 --------------------------------------- #!c:/Perl/bin/Perl.exe -w print "Con...
日時: 2007年04月17日 03:41
無名ハッシュと呼ばれ、ハッシュに名前を付けなくても、値を参照する方法。 通常、 my %hash = ("キー" => "データ値"); # ハッシュ設定 my$info = \%hash; # ハッシュをリファレンス格納 print $...
日時: 2007年04月17日 03:29
ハッシュは、my %hash = ...として、ハッシュ設定しますが、%hash の先頭に、\ をつけ、\%hash とすると、ハッシュのリファレンスとなり、ハッシュの内容を参照するメモリアドレスが格納されます。 -------------...
日時: 2007年04月17日 02:55
ファイルを開いたり、閉じたりする操作は頻繁に行われるので、サブルーチン化してみる # *は型グログといい、ファイルハンドルを変数に格納する時には付けておく $fhはファイルハンドル、$modeはモード、$filepathはファイル名 my ...
日時: 2007年04月15日 18:39
Perlなどの実行をコマンドプロンプトで行う場合、日本語を入力したいときは・・・ Altキーを押しながら、半角/全角キー、を押すと、日本語入力モードに変わる。 また、アルファベット入力に戻したいときは、Altキーを押しながら、半角/全角キー...
日時: 2007年04月15日 18:12
読み取り専用でファイルを開くには、open関数で指定するモードを"<"とする。 open (ファイルハンドル, "<", ファイル名); で、ファイルをまず開いた後、 $変数 = <...
日時: 2007年04月15日 17:54
ファイルを開いて、文字を書き込んで、保存するには、open関数を用います。 open (ファイルハンドル, "モード", "ファイル名"); または、 open (ファイルハンドル, "モードに続けてファイル名"); モードは、 > 新規...
日時: 2007年04月15日 17:28
サブルーチンとは、ひとまとめになった処理に名前を付けたもの。(PHPでいうfunctionでの関数定義に似ている) sub サブルーチン名 { 処理1; 処理2; 処理3; } のように書きます。 サブルーチンに引数を渡す...
日時: 2007年04月15日 05:37
変数 $new と、$old の内容を入れ替えたい場合、リストを使うと簡単。 ($new, $old) = ($old, $new); とすると、データの入れ替えが簡単に行えます。 リスト内のデータを参照したい場合、 $youbi = ("...
日時: 2007年04月15日 05:23
HTMLのソースを長い行にわたって出力する場合、Perlのヒアドキュメント使うと便利です。 まず、<<に続けて、任意の文字列を入力し、; で終わります。 そして、HTMLの文章を書いた後、最初の任意の文字列と同じ文字列を最後...
日時: 2007年04月15日 04:43
ある文字列の中に、検索文字列があるかどうかを調べるのに使います。 index (検索対象, 検索文字列, 検索開始位置); $big = "hello world !"; $small = "world"; $where = index (...
日時: 2007年04月15日 00:20
open を使う時には、ファイルハンドルとファイル名を指定する。 open CONFIG, "dino"; 入力用 open CONFIG, " 入力用の場合は、既存のファイル dino をオープンして、そのファイルの中身を、CONFI...
日時: 2007年04月14日 17:30
each関数は、キー/値のペアを2要素のリストとして、返す。 以下のような、Perl文を書くと、 -------------------------------- print "Content-type:text/html\n...
日時: 2007年04月13日 03:42
keys関数とvalues関数の使用例です。 my %hash = ( "a" => 1, "b" => 2, "c" => 3, ); my @key = keys %hash my @values = values %...
日時: 2007年04月13日 03:29
Perlのハッシュは、PHPでいう連想配列みたいなもの。 キー(添え字)として、数字ではなく、文字列を使った配列です。 $hash{$some_key} のような書き方をする。 $family_name{"fred"} = "pit"; $...
日時: 2007年04月13日 03:12
$n = &max(10, 15) &は、サブルーチンを呼び出す合図。 ここでは、サブルーチンmaxに引数リスト(10, 15)を渡して、呼び出している。 このときに渡される引数リスト(この場合(10, 15))は、@_ という特別な配列変...
日時: 2007年04月12日 21:19
shift演算子と、unshift演算子は、配列の先頭に対して、作用する。 shift演算子は、配列の先頭の要素を取り出し、新たな配列は要素がひとつ減る。 unshift演算子は、配列の先頭に要素を追加し、新たな配列は要素がひとつ増える。 ...
日時: 2007年04月12日 20:09
pop演算子は、配列から最後の要素を取り出して、それを返す。 新たな配列は、最後の要素が取られて、要素がひとつ減ることになる。 @array = 5..9; $a = pop(@array); とすれば、 $aは9になり、@arrayは(5...
日時: 2007年04月12日 20:01
@name = ("大田", "山下", "西本"); または、qw ショートカットを使って、 @name = qw / 大田 山下 西本 /; と、書いた場合、 $name[0] = "大田"; $name[1] = "山下"; $nam...
日時: 2007年04月12日 19:49
範囲演算子 .. 左のスカラー値から、右のスカラー値までの範囲で、1ずつ増加する値のリストを作る。 (1..5) # (1, 2, 3, 4, 5) (1.5..5.8) # (1, 2, 3, 4, 5) 小数点以下...
日時: 2007年04月12日 19:36
$name[0] = "大田"; $name[1] = "山下"; $name[2] = "西本"; $name[3] = "河野"; $name[99] = "氷川"; という、配列があった場合。 $name[4] から、$name[98...
日時: 2007年04月12日 19:23
まずは、コマンドプロンプトを立ち上げます。 cd ○○ で、CGIファイルを保存しているディレクトリへと移動。 ひとつ上のディレクトリに移動するには、「cd ..」 と入力して、Enterキー。 下層のディレクトリに移動するには、「cd デ...
日時: 2007年04月12日 18:56
chomp演算子は、変数に対してのみ作用する。 変数には、文字列が入っている必要がある。 そして、その文字列にの末尾に改行文字が入っている場合、chompは、その改行文字を削除します。 $text = "こんにちは、みなさん\n"; cho...
日時: 2007年04月12日 18:49
数値と文字列の比較演算子 比較 数値演算子 文字列演算子 等しい == eq 等しくない != ne より小さい より大きい ...
日時: 2007年04月12日 17:48
1個の値を格納できる入れ物。 変数の名前は、ずっと変わらないが、その中に保持する値は変わる。 頭に、$記号を付け、英文字、数字、下線が有効。 大文字と小文字は、別の文字として扱われる。 ゆえに、$fred と $FRED は、別のスカラー変...
日時: 2007年04月12日 17:26
1個の小文字 x によって表されます。 "fred" x 3 ⇒ "fredfredfred" となる 5 x 4 ⇒ "5555" となる 掛け算の演算子 * と違うことに注意。 また、繰り返し回数(右側のオペランド...
日時: 2007年04月12日 17:15
頭に次のものが付くと・・・ 0 8進数 0x 16進数 0b 2進数 として、扱われる。 次の数字は、全て10進数での255 0377 0xFF 0b11111111 0377 は、8進数なので、10進数になおすと・・・ 8の2乗×...
日時: 2007年04月12日 17:03