2008-03-06から1日間の記事一覧

=>*?, +=>+?, ?=>??, {}=>{}?

6.15 欲張りと非欲張り

欲張り量指定子(*, +, ?, {}など)を含むパターンの「欲張りマッチ」を抑制したい。 欲張り量指定子を非欲張り指定子に置き換える。

6.14 前回パターンがマッチした箇所からマッチングを行う

前回パターンがマッチした箇所からマッチングを再開したい。これができれば、文字列からデータを連続して取り出すことができる。 /g修飾子、/c修飾子、\Gパターンアンカー、pos関数を組み合わせて使用する。 例1. /g修飾子を使って、文字列中にある全ての正…

6.13 あいまいマッチング

マッチングをファジィに行いたい。ある程度のエラーを許容し、文字列がパターンに正確にマッチしない場合でも、マッチと判定されるようにする。 CPANモジュールString::Approxを使用する。 use String::Approx qw(amatch); if (amatch("PATTERN", @list) { #…

6.12 正規表現にロケール設定を反映させる

use localeプラグマを宣言して、Perlの正規表現およびテキスト操作ルーチンにPOSIXのロケール設定を反映させる。

6.11 パターンが有効かどうか検証する

eval構文内でダミー文字列に炊いてマッチングを行うことで、パターンが有効かどうかテストする。 do { print "Pattern? "; chomp($pat = <>); eval { " " =~ /$pat/ }; warn "INVALID PATTERN $@" if $@; } while $@; パターンが有効かどうか検証する単独の…

よくわからないイベント

生後120日を超えた大安の日にするイベントと言うものをやっていた。何か、赤飯とか鯛とかを食べると、大きくなってから食いっぱぐれないらしいが。あんま昔の根拠の無い風習って好きじゃないけど、でも、こういうのが無いと、日常が無味乾燥化しちゃうもんね…

アンソフト

Ansoft Designer/Nexximのバージョンアップセミナに参加。思ったよりも得るもの?が多かった。 Ansfotに大きな期待をしては行けない。AnsoftはLSIメーカの方を向いて仕事をしている訳ではないので、Linux版の需要を見極められずにいる。我々としては、Ansfot…