perl


関数

  • chop 改行切り落とし
    chop(word);
  • defined 値が定義されているかどうかで真偽を返す
  • 内部関数はselfが引数としてこないっぽい
    read_between(); selfなし
    $obj->read_between(); selfあり
  • 実行パス獲得
    use FindBin qw($Bin);
    use lib "$Bin/../lib";  #これでパスをかくとくー

演算子

  • qw
    qw (term term1 term2 ); #とすると空白で区切って右辺に格納する 
  • ?と:
    my $term = $flag ? a : b;  #とすると$flagが真なら$termにaを代入, 偽ならbを代入
  • map
    my @double = map { $_ * 2 } @num; #@numの値を二倍して@doubleに格納  mapは配列を置換する

テスト

  • 続・初めてのperl にテストの内容があるみたい
  • テストファイルの名前の最初は数字
  • ディレクトリ(例: t)以下のテストを全て実行するコマンド
    prove -l t

YAML

関連ページ


困ったこと

  • perlモジュールの場所を調べる
    perl -e 'print "@INC" #コマンドラインでこれを入力する
  • perlモジュールのドキュメントを読む
    perldoc XML::Simple #XML::Simpleのドキュメントを読む
  • perlモジュールのソースを読む
    perldoc -m XML::Simple #XML::Simpleのソースを読む
  • 関数の呼び出し元や行番号を調べる
    use Data::Dumper;
    my @call_info = caller;
    print STDOUT Dumper(\@call_info);
  • Encode
    use Encode qw/ encode decode/ ;
    encode('euc-jp',$line);
  • 文字コード判定
  • 文字列置換
    $str="   Hello test            test   ";
    $str=~ s/(?:test)/inaba/g;
    print $str;
  • utf8フラグをはずす
    print utf8::is_utf8($string) ? 'flagged' : 'no flag'; #ついているか確認
    $string = encode('utf8',$string); #デフラグ 注:文字コードはutf8になる
  • 配列を引数とするとき
    @arg = @_; #これで全ての引数を受け取れる 同時に変数を取得する場合,これより先にshiftする必要あり

最新の20件

2013-11-15 2016-03-07 2015-02-27 2015-01-29 2015-01-26 2015-01-07 2014-12-17 2014-11-27 2014-11-20 2014-04-23 2014-04-11 2014-01-24
  • perl
2013-10-24 2013-10-11 2013-09-24 2013-08-26

今日の5件

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