[Perl] => [配列]



特定の文字列の検索にはgrepが使用できます。マッチした値は左辺の配列に代入されます。


[使用例 - whoisからドメインの有効期限を調べる]

@whois_result = `/usr/bin/whois ksknet.net`;
($expiration) = grep(/expires/, @whois_result);
print "$expiration";


※$_は配列@whois_resultに使用されるため、リスト(この場合はexpires)に$_は使用しないこと!$_を使用してしまうと、大抵予期しない結果になります。


※通常grepの結果は配列に入れます。普通にgrepの結果をスカラー変数にいれると、マッチした文字列の個数が取り出されます。


また否定演算子の!を使えば、マッチしないものを抜き出すことが可能。
たとえばコメント行を削除するには


@result = grep(!/^#/, @array);



広告
新版Perl言語プログラミングレッスン入門編 新版Perl言語プログラミングレッスン入門編
¥ 2,835 / 売り上げランク: 6218 / 512 ページ

非常に分かりやすい。
今までにも様々な参考書に目を通してきていたが、その中でもこの本かなり読みやすく、丁寧に書かれていた。
初心者には特にお勧め。
初心者以外の方でも軽く目を通す価値はあると思う。

Code Reading―オープンソースから学ぶソフトウェア開発技法 Code Reading―オープンソースから学ぶソフトウェア開発技法
¥ 5,460 / 売り上げランク: 7366 / 523 ページ

CodeCompleteとCodeReadingを併せて読むとよいと、
組込み系のSESSAMEプロジェクトのメーリングリストと、
OS系のTOPPERSプロジェクトのメーリングリストで推薦を受けました。

CodeCompleteは読んだことがあったので、CodeReadingを読んでいます。

オープンソースを仕事にしているので、たいへん役立っています。

MISRA-Cは研修で取り上げてきたので、本書も研修の資料としても取り上げるように準備中です。

初めてのPerl 初めてのPerl
¥ 3,780 / 売り上げランク: 7981 / 379 ページ

いわゆるリャマ本として知られる定番書

初めてのとあるが初心者向きではないと思う。
よくできてはいるが、、。