2010-01-01から1年間の記事一覧

quotemeta関数 - 正規表現文字のエスケープ

Perl › 関数 › here quotemeta関数を使用すると、正規表現で利用される文字列を通常の文字として扱うことができます。ワード文字以外のすべての文字の直前に\がつけられます。 # 正規表現文字列を通常の文字として扱う $ret = quotemeta $str; 正規表現文字…

lcfirst関数 - 文字列の先頭を小文字に変換

Perl › 関数 › here 文字列の先頭だけを小文字に変換するにはlcfirst関数を使用します。 # 先頭の文字を小文字に変換 $ret = lcfirst $string; Perl › 関数 › here

lc関数 - 大文字を小文字に変換

Perl › 関数 › here 大文字から小文字へ変換するにはlc関数を使用します。lc関数は引数のそれぞれの文字を小文字に変換します。変換できない文字の場合は引数に与えた文字がそのまま返されます。 my $str = lc "BBB"; サンプル 大文字から小文字への変換のサ…

ucfirst関数 - 文字列の先頭を大文字に変換

Perl › 関数 › here 先頭の文字だけを大文字に変換するにはucfirst関数を使用します。 $ret = ucfirst $string; Perl › 関数 › here

rindex関数 - 文字列の検索(末尾から)

Perl › 関数 › here 文字列の末尾から文字列を検索するにはrindex関数を使用します。index関数が先頭から文字列の検索を行うのに対して、rindex関数は、末尾から文字列を検索します。第1引数には検索対象の文字列、第2引数には検索したい文字列を指定します…

Scalar::Util - スカラ値に対するユーティリティ

Perl › モジュール › here Scalar::Utilはスカラ値に関するユーティリティを集めたモジュールです。 # Scalar::Utilの使用 use Scalar::Util 'looks_like_number'; 数値関連の関数 数値であるかどうかの判定を行うにはlooks_like_numberを使用します。 # 数…

POSIX - POSIXで定義された関数

Perl › モジュール › here POSIXモジュールを使用すれば、POSIXで定義された関数を使用することができます。 # POSIXモジュールの使用 use POSIX qw/ceil floor/; 数学関連の関数 小数点を切り上げるにはceilを使用します。 # 小数点の切り上げ $result = ce…

eval - 例外のキャッチ、文字列の動的実行

Perl › 関数 › here eval関数を使用すると、ブロック構文の場合は、例外をキャッチすることができます。文字列構文の場合は、文字列を動的に実行することができます。 # evalブロック - 例外のキャッチ eval { ... }; # eval文字列 - 文字列を動的に実行 eva…

Perlのリスト

Perl › 演算子 › here リストとは複数の値の並びを表現したものです。 # リスト ('a', 'b', 'c', 'd') リストは配列やハッシュに代入して、初期化に利用できます。 # 配列への代入 my @array = ('a', 'b', 'c', 'd'); # ハッシュへの代入 my %hash = ('a', '…

qq - ダブルクォート演算子

Perl › 演算子 › here qqでダブルクォートで囲った文字列と同じ意味を表現できます。ダブルクォートはエスケープせずに使用することができます。 my $message = qq(Not found "$file"); qq//の代わりに次の表現なども使用することができます。 qq() qq{} qq#…

q - クォート演算子

Perl › 演算子 › here クォート演算子「q」でシングルクォートで囲った文字列と同じ意味を表現できます。シングルクォートはエスケープせずに使用することができます。 my $message = q(We'll go to Japan); q()の代わりに次の表現なども使用することができ…

Perlデバッガの手引き

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

Perlが優れている分野 - ruby, python, PHPとの比較なども

Perl › here Perlは便利なプラグラミング言語ですが、どんな特徴があるのでしょうか。Perlというプログラミング言語の特徴について解説してみます。 1. Perlの特徴 Perlはテキスト処理が得意なスクリプト言語です。数値と文字列の自動変換機能、強力な正規表…

Pod::Usage - PODドキュメントの出力

Perl › モジュール › here Pod::UsageはPODドキュメントの出力するためのモジュールです。ドキュメントを表示してプログラムを終了させるpod2usageという関数を使用することができます。 関数を使用する場合は明示的にインポートするのがよいでしょう。 # 関…

File::Basename - ファイルのベース名を取得

Perl › モジュール › here File::Basenameはファイル名からベース名やディレクトリ名を取得するためのモジュールです。次の3つの関数を使用することができます。 basename - ファイルのベース名の取得 dirname - ディレクトリ名の取得 fileparse - もう少し…

Object::Simple - Mojo::Base互換のアクセサを生成

Perl › モジュール › here デフォルト値つきのアクセサを作成するにはObject::Simpleを使用します。Object::SimpleはMojoliciousのMojo::Baseと高いレベルで互換性があります。 package Point; use Object::Simple -base; has x => 1; has y => 1; package m…

Class::Accessor::Fast - アクセサを簡単に作成する

Perl › モジュール › here Class::Accessor::Fastはアクセサを簡単に作成するためのモジュールです。アクセサとはオブジェクトの属性にアクセスするためのメソッドのことです。 mk_accessorsメソッドを使用してアクセサを生成することができます。Class::Acc…

values関数 - ハッシュのすべての値の取得

Perl › 関数 › here ハッシュのすべての値を取得するにはvalues関数を使用します。取得した値の順序は不定です。 # すべての値を取得 @values = values %hash; 引数としてハッシュを渡す必要があるので、ハッシュのリファレンスの場合はデリファレンスする必…

undef関数 - 未定義値

Perl › 関数 › here undef関数を使えば、未定義値を設定することができます。あるいは、引数に指定した変数の値を未定義にします。 undef undef(変数) 未定義値の設定は次のように行います。変数「$name」の値が未定義になります。 $name = "Kimoto"; $name …

defined関数 - 値が定義されているかを確認する

Perl › 関数 › here 値が定義されているかを確認するにはdefined関数を使用します。 # 値が定義されているかの確認 $is_defined = defined $value; 定義されているとは defined関数で判定できる定義されている値とはなんでしょうか。考えてみましょう。変数…

warn関数 - 警告を出力する

Perl › 関数 › here 警告を出力するにはwarn関数を使用します。メッセージの末尾には警告が出力された行番号が自動的に追加されます。行番号を表示させないようにするには末尾を改行で終えます。 # 警告を出力する # 行番号あり warn $message; # 行番号なし…

die関数 - エラーメッセージを表示してプログラムを終了

Perl › 関数 › here エラーメッセージを表示してプログラムを終了するにはdie関数を使用します。メッセージの末尾にはプログラムが終了した行番号が自動的に追加されます。行番号を表示させないようにするには末尾を改行で終えます。 # エラーメッセージを表…

binmode関数 - バイナリモード

Perl › 関数 › here ファイルハンドルをバイナリモードに変更するにはbinmode関数を使用します。バイナリモードとはファイル入出力を行うときに改行の自動変換を行わないモードのことです。画像や動画などのバイナリファイルの入出力はバイナリモードで行う…

bless関数 - オブジェクトの生成

Perl › 関数 › here オブジェクトを生成するにはbless関数を使用します。Perlではオブジェクトというのはクラス名に関連付けられたデータのことです。ほとんどの場合にデータにはハッシュのリファレンスが利用されます。 # オブジェクトの生成 $obj = bless …

unless文

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

while文 - 繰り返し処理を行う

Perl › 構文 › while文 while文を使うと繰り返し処理を記述することができます。条件が真の間ブロックの中身を繰り返します。 while (条件) { ... } 0〜2までの数値を出力 while文を使用して0〜2までの数値を出力するサンプルです。while文の最後で変数「$i…

grep関数 - 特定の条件を満たす配列要素のみ取得

Perl › 関数 › here 「grep関数」を使用すると配列の中で条件にマッチした要素のみを取り出すことができます。デフォルト引数$_に@arrayの各要素が渡されてきます。条件文を満たした要素のみが@matchedに追加されます。 # 条件にマッチした要素のみを取り出…

map関数 - 配列のすべての要素の変換

Perl › 関数 › here 配列のすべての要素を変換するにはmap関数を使用します。@arrayの各要素がデフォルト変数$_に渡されてきますので、コードブロック{ }の中で必要な変換を行います。変換文で最後に評価されたものが@mappedに順番に追加されます。 # 配列の…

簡易検索アプリケーション(Mojolicious::Liteバージョン)

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

画像掲示板(Mojolicious::Liteバージョン)

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …