お勉強 / Perl Memo


お勉強

関数

  • get("URL");:与えられたURLに対応するドキュメントをとってきて、配列を返す。
  • getstore("URL","ファイル");:URLに対応するドキュメントを得て、ファイルに保存する。
  • s/検索する文字列/置換後の文字列/;
    $str =~ s/dog/cat/;
  • shift:指定した配列の先頭の要素を取り出して、その値を変数に格納する。取り出した要素は元の配列から削除され、要素は1つずつ前にずれる。

文字コード変換

  1. jcode.plを使う場合
    1. jcode.plをソースファイルと同じディレクトリに置く
    2. ソースの最初のほうに以下を記述
      require "jcode.pl";
    3. eucをshift-jisに変換する場合は
      jcode::convert(\$str, "sjis", "euc");

パターンマッチ

$result = "Let's study Perl!" =~ /Perl/;

はマッチしたら$resultに1が、マッチしなかったらundefが入る。

$result = "Let's study Perl!" !~ /Perl/;

はマッチしなかったら$resultに1が、マッチしたらundefが入る。

パターンマッチの結果を表す特殊変数

特殊文字意味
$&マッチした文字列全体
$`マッチした部分より前にある文字列
$'マッチした部分より後ろにある文字列
1,2,...1番目、2番目・・・のグループにマッチした文字列
$+最後のグループにマッチした文字列
$r = "I love cat and dog." =~ /love (.+) and (.+)./;
print $1 . "\n";
print $2 . "\n";
print $& . "\n";

の実行結果は

cat
dog
love cat and dog.

正規表現


メタ文字

メタ文字意味
.任意の1文字(改行除く)
*0回以上の繰り返し
+1回以上の繰り返し
?0回または1回以上の繰り返し
^先頭
$末尾
選択
()正規表現のグループ
[]文字クラス
{n}n回の繰り返し
{n,}n回以上の繰り返し
{n,m}n回以上m回以下の繰り返し
メタ文字を文字として扱う

文字クラスの特殊文字

特殊文字文字クラス意味
¥w[0-9a-zA-Z_]半角英数字と_
¥W[^0-9a-zA-Z_]半角英数字と_以外
¥s[¥t¥n¥r¥f]空白(半角スペース、タブ、改行)
¥S[^¥t¥n¥r¥f]空白(半角スペース、タブ、改行)以外
¥d[0-9]数字
¥D[^0-9]数字以外

演算子

演算子意味
.(ピリオド)文字列を連結する

edit

menu

最新の20件

2007-10-06 2006-04-02
  • お勉強/Perl Memo
2007-10-06 2006-11-14 2006-09-29 2006-09-22 2006-04-02 2006-03-14 2006-02-26 2006-01-28

  • counter: 151
  • today: 1
  • yesterday: 0
  • online: 1