PHPを使う利点
必要なもの・こと
PHPのバージョン
キャッシュ
ウェブサービスからデータを取得する
XMLのパース
Last.fmのウェブサービス
WebAPIとPHPを使ってWebページを自動生成する
コメントなどは・・・
目次の自動生成
Web API(PHP)に関連した書籍
正規表現に関連した書籍
■PHPを使う利点
PHPという言語は、サーバーサイドで動作するHTML環境にマッチしたプログラミング言語です。
既存のHTMLファイルの拡張子を.phpに変更して、<?php 〜 ?>の〜の部分にPHP言語でコードを書き込むだけで、動的な処理が簡単に実現できます。
後述しますが、このページの一番上の目次は、PHPを使って自動生成しています。
また、PHPはC言語などの高級言語に似ているので、他の言語経験が何かしらあれば、それほど苦労せずに習得できるのもGoodです。
■必要なもの・こと
- 知識
まずは、HTML及びXMLの知識が必要です。とはいっても、HTMLに関してはごく小数のタグを押さえておけば、問題ないですし、XMLに関しても後述するXMLパース関数であるsimplexml系列の関数であまり意識しなくても使用できますので、そう心配する必要はありません。多くのWebサービスでは、ユーザーからのリクエストに対しての返答をXML形式の文書で返してくれます。
このリンクをクリックすると、HTML入門書関連書籍の一覧とユーザーレビューを見ることが出来ます
このリンクをクリックすると、XML入門書関連書籍の一覧とユーザーレビューを見ることが出来ます
- リファレンス
何らかの言語のプログラミング経験のある方なら、PHPオフィシャルサイト - PHP マニュアル -で事足りると思います。サンプルも豊富ですし。サンプルの説明は英文ですが、それほど問題にはならないでしょう。基本的にはコードの塊ですし。
書籍が必要な場合は、下のリンクを参考に探してみるとよいでしょう。
ここをクリックすると、PHP関連書籍の一覧とユーザーレビューを見ることが出来ます
プログラミング経験がまったくない、という方は、Web検索してみると、PHP入門者向けのページがあるので、そこで勉強してから、このページに帰ってきたほうがよいと思います。 - 環境
環境といっても、いろいろあります。
- テキストエディタ
基本的には、どのテキストエディタでもOKです。リクエストに使用するエンコードやXML返却データの文字コードがUTF-8になっていることが多いので、UTF-8対応のテキストエディタを使用すると、何かと手間が省けて便利です。 - ローカル実行環境
PHPオフィシャルサイトでダウンロードできるので、これを自分のPCにインストールすればOKです。
一番上にあるメニューの「ダウンロード」をクリックすると、ダウンロードページへジャンプできるので、そこから自分のPCで使えるファイルをダウンロードし、解凍し、インストール、といった手順になります。 - Web実行環境
Linuxなどで自宅サーバーを構築している場合は、PHPを追加インストールするだけでWebからもアクセス可能なページが作成できます。
ただ、自宅サーバーを構築している方はごく小数だと思うので、実際にはPHPに対応したレンタルサーバーのお世話になることになります。このウェブサイトもPHPに対応したレンタルサーバーで運営しています。
探してみると分かるのですが、PHPに対応した無料レンタルサーバー事業者はかなり少ないです。少々の出費は覚悟しておいた方がいいです。
また、アフィリエイトを使用しないのであれば、以下のレンタルサーバー事業者が無料HPにPHP機能を付加して提供してくれていますので、試してみてもよいかも。
- dan-d

ドメイン名がとってもダンディーなのが、魅力!?
容量無制限でPHP4が使用可能です(個人的に試したところ、PHP5でした。サーバーによって異なるのかもしれません)。
有料で広告免除サービスも用意されているので、気に入ったら、広告非表示にしてメインのウェブサイトとして使用することも可能です。 - TOK2

無料で使える容量無制限レンタルサーバー
こちらも同様の容量無制限の無料ホームページ。
無料プランでは、広告が付きますが、PHP5が利用できます。
さほど人気サイトにならなくても、意外と早く初期投資分は戻ってきます。- ロリポップ!

「ナウでヤングなレンタルサーバー」でおなじみ?のロリポップですが、サブドメイン名が選択できる、というのがポイント高いですね。どんなサブドメイン名があるかは、上のリンクをクリックすると、ロリポップのHPにジャンプするので、そこで確認できます。
PHP4というのがちょっとネックかな。それ以外のスペックは十分だと思います。
07年6月26日現在の料金は、1ヶ月、3ヶ月契約なら月額315円、6ヶ月以上なら月額263円(初期費用が別途必要、詳しくは、上記リンク先で)となっています。
サポートは、電話サポートはなしで、HPからの問い合わせフォーム経由でのサポートです。
- ブロックグループ(BLOCKGROUP)

ブロックグループ!月額250円で1Gの大容量・高機能のレンタルサーバ!
初期費用無料・月額250円で1Gの大容量・高機能のレンタルサーバ
バージョン管理機能(Subversion)の標準実装、共同編集機能、パスワード設置機能など、豊富な機能
Apach2.2 PHP5 MySQL5 UTF-8 IMAP4ベース:最新のサーバ環境で構築
同社曰く、「新しく作るのだったら、いまさらApache1.3 PHP4 MySQL4.0 POP3はないでしょう」とのこと。もっともです。
サブドメインは、ユニークネーム.bgrp.jpというドメインになります。短いし、jpだし、Goodです。
はっきりいって、他の格安レンタルサーバーと比較しないで加入しても後悔することは少ないでしょう。
自分もXREAをレンタルする前にブロックグループがあれば、こっちをレンタルしたと思います。
今現在、格安レンタルサーバーの中では、一番お勧めです。詳しくは、上記バナーをクリックしてご確認を。
- XREA
このウェブサイトを運営しているXREAは、年額2,400円で利用できます。
ときおり、一ヶ月200円で利用できる、と記述したウェブサイト等がありますが、これは間違いです。
あくまでも、年間払いで2,400円であって、短期利用は、それようの料金が用意されています。
ま、前払いでやってくれれば、その分安くしますよ、ってことです。ちなみに一ヶ月単体の利用料金は、07年6月25日現在で400円に設定されています。
この有料プランは、VALUE DOMAINが料金収納を代行?(間違ってたらスミマセン)しているようなので、まずは、VALUE DOMAIN - ユーザー登録をすませてから、XREA - お試し登録 -に登録後、VALUE DOMAINのコントロールパネルでXREAで作成したページ(アカウント)を追加、という流れになります。ちょっと面倒ですが、その分安く利用できるので、ま、仕方ないのかな。
スペック面でも、容量2ギガ、PHP5対応、SQL-DB使用可(5個)、など十分です。「電話によるユーザーサポート不要で、できるだけ安く運営したい」、という方にはお勧めできます。転送量が上限3ギガなので、人気サイトになると、厳しいかもしれないかな、というのがネックでしょうか。このウェブサイトは人気サイトではないので、まったく問題ないです。
- dan-d
- テキストエディタ
■PHPのバージョン
ただ、今後PHP6が登場すると、PHP4のバージョンアップは打ち切られると思われますので、特に理由がない限り、PHP5を使用したほうがベターだと思います。
PHP4では使えない便利な関数群もPHP5に用意されている、というのもありますし。特に、ウェブサービスを前提に考えた場合、XMLのパースが簡単に行えるsimplexmlクラス(関数群)がサポートされているPHP5を選らばいない理由は見つからないと思います。
このページの説明もPHP5を前提に記述しています。
■キャッシュ
ここでいう「キャッシュ」は、データをキャッシュする意味のキャッシュです。スペルも、cacheと異なります。
キャッシュの目的は、ウェブサービス提供者への負荷軽減、データキャッシュによるレスポンスの向上、です。
PHP自体には、キャッシュ機能は標準装備されていないのですが、PEARというライブラリにCache_Liteという簡単に使えるキャッシュ機能があるので、これを使うとよいでしょう。
このウェブサイトでも解説しているので、右側サイドバーのサイトマップから漁ってみてください。
■ウェブサービスからデータを取得する
PHPでは、file、file_get_contentsがあるので、目的に応じて使い分けるわけですが、後述するsimplexml_load_stringの引数がstringなので、基本的にはfile_get_contentsを使用することになります。
■XMLのパース
PHP5のsimplexml系列の関数群、simplexml_load_file、simplexml_load_stringでXMLを簡単にパース出来ます。
simplexml_load_fileは、あくまでもテスト用と考え、実際にはPERAのCache_Liteとsimplexml_load_stringを組み合わせたキャッシュ機能付きsimplexml_load_fileを自作して、通常運用はキャッシュ機能付き関数を使用する、というのがよいでしょう。
この辺の話しもブログで解説しているので、右側サイドバーのサイトマップから漁ってみてください。
■Last.fmのウェブサービス
このウェブサイトでもLast.fmの記事を書いていますので、興味のある方は参考にしてください。
ウェブサービスの仕様は、Web Services - audioscrobbler -で確認してください。
■WebAPIとPHPを使ってWebページを自動生成する
あくまでもサンプルなので、実際に使用する場合は、エラー処理やキャッシュ機能の組み込みが必要ですので、あらかじめご了承ください。
ここでは、前述したLast.fmのウェブサービスを使って、任意のアーティストの人気トラック(曲名)を表示するWebページを自動生成するPHPファイルを作ってみましょう。 まず、Last.fmのウェブサービスから任意のアーティストの人気トラックを取得するには、ArtistData→TopTracksと辿っていくと、
http://ws.audioscrobbler.com/1.0/artist/アーティスト名/toptracks.xmlというリクエストを送ると、該当アーティストの人気トラックのXMLファイルが返信されてくることが分かります。
試しに、アーティスト名のところにUTF-8でURLエンコードしたアーティスト名、URLエンコードが面倒な場合は、「Norah+Jones」として(「」は入力しないこと)、リクエストURLは以下のようになります。これをお使いのウェブブラウザのアドレス入力欄に入力後、Enterを押してください。
http://ws.audioscrobbler.com/1.0/artist/Norah+Jones/toptracks.xmlブラウザによって、表示は異なるのですが、FirefoxやIE6の場合、XMLソースがそのまま表示されるので、帰ってきたデータが確認できます。
とてもシンプルなXMLファイルなので、初心者にはもってこいです。
simplexml_load_stringでこのXMLファイルを読み込むと、簡単にトラック情報にアクセスできるので、あとは自分のアイディア次第で好きなページを作成するだけです。
それでは作成するプログラムの仕様を以下のように規定したサンプルソースを提示します。
スペック:クエリーとして、artist=アーティスト名で与えられたアーティストのトップトラックを表示します。アーティスト名は、UTF-8でURLエンコードした状態で指定することとします。アーティスト名が未指定の場合は、エラーメッセージを表示します。
これだけです。
<html>
<head>
<title>指定されたアーティストのトップトラックを表示します</title>
</head>
<body>
<?php
if(empty($artist)){ print 'アーティスト名を指定する必要があります<br>'; return; }
$req = 'http://ws.audioscrobbler.com/1.0/artist/' . urlencode($artist) . '/toptracks.xml';
$xml = simplexml_load_file($req);
foreach($xml->track as $t){
print $t->name . '<br>';
}
?>
</body>
</html>
これで、Last.fmウェブサービスが提供しているデータを動的に表示できるページが作成できます。実際に動かす場合は、UTF-8で保存してください。
また、キャッシュ処理やエラー処理は省いているので、そのあたりも考慮する必要が出てきます。
実際の動作例は、アーティストリンクを参照してください。実際に使う場合は、このようにフォームなどでUIを組み立て方がユーザビリティが高くなるので、お客さんがつきやすくなります。
なお、アーティストリンクでは、キャッシュを行っていますので、一定時間、同じリクエストに関しては、同じ結果を表示するようになっています。さほど、即時性を持たないデータではこのようにしておくことで、トラフィックを抑えることが必要なのは、前述したキャッシュの項目を見ていただければ明らかだと思います。
上のほうで、「UTF-8でURLエンコード」と書きましたが、UTF-8でファイルを保存しておくことを前提に考えれば、プログラミングの観点から見るとurlencodeをコールするだけですみます。UTF-8以外でファイルを保存した場合は、mb_convert_encodingなどで事前にUTF-8に文字コード変換してからurlencodeに渡す必要があります。また、取得したXMLデータを保存した文字コードに変換する必要もあります。このような手間が必要なことを考えると、ウェブサービスを中心に考えた場合、UTF-8以外で保存するメリットはあまりありません。
各命令については、PHPリファレンスで確認してください。
$xmlにパースされたXMLデータが格納され、$xml->track配列にname,reach,urlが含まれているので、今回はその中から、トラック名であるnameだけを表示しています。
配列処理には、サンプルに挙げたforeachやfor文があるので、用途に合わせて使い分けるとよいでしょう。今回のようにすべてのデータを表示する場合は、foreach文が便利です。
■コメントなどは・・・
ブログのコメント欄にいただいた方が、詳しい方が見てくれている可能性もあるので、有用な情報が得られるかもしれません。
■目次の自動生成
ウェブページでも目次というのは、重要な要素なのですが、ついついおろそかにしてしまいがちだったりします。コンテンツの内容と目次の内容が同期していないページ、結構ありますよね。閲覧者からすると、ウェブページの信頼度も低下してしまう可能性もあるので、おろそかにはできません。
この面倒な目次の作成もPHPを使えば、自動生成できるのでラクチンです。
まず、仕様を考えてみましょう。
目次に必要なのは、
アンカー名、目次の名称
の二つです。
そこで、以下に該当する文字列を抽出して目次を作成することを考えます。
<a name="anchor_name">■目次の名称</a>アンカー名がanchor_nameで目次の名称が目次の名称です。
さて、これらの文字列をどうやって取り出すか?ということになるわけですが、
PHPには、文字列検索を行う関数が用意されています。ここでは、preg_matchを使った例を紹介します。
$str = file('filename.php');
foreach($str as $array){
$pattern = '/<a name="(.*?)">.*?■(.*)<\/a>/';
$match = preg_match($pattern,$array,$match_array);
if( $match ) {
$array_size = count($match_array);
if( 3 == $array_size && !empty($match_array[1]) && !empty($match_array[2]) ) {
print '<a href="#' . $match_array[1] . '">' . $match_array[2] . '</a><br>';
}
}
}
これで、目次が作成できるので、BODY直下に書き込んでおけば、同じ書式で項目名を作成すれば、自動的に目次にも追加されるので、メンテナンスフリーでラクチンです。カスタマイズすることで、ul,liなどで親子状態を作ったりすると、さらに詳細な目次も作成できるので、用途に応じて作るとよいでしょう。
まず、strにファイルの内容を読み込み、foreachループで一行ずつ処理していきます。
pattern変数に、このような値を設定しておくと、目的の文字列が取り出せます。ちなみに、正規表現を使って設定しているのですが、正規表現まで説明すると、このページの守備範囲を超えてしまうので、ここでは割愛させていただきます。
正規表現について興味のある方は、Webで検索するか、正規表現に関する書籍をAmazonで検索ページを参考に、読んでみるとよいでしょう。このページでは、Amazonのユーザーレビューも表示されるので、一覧するにはとても便利です。ちなみに、このページもAmazonWebServiceとPHPで自動生成されたページです。
元に戻りますが、
preg_matchの2番目の引数には、検索対象文字列、第3引数には、マッチした場合、その結果を代入する変数を指定しています。条件にマッチした場合は、この変数にマッチした値をセットし、関数はTRUEを返します。マッチ結果を代入する変数には、配列として格納され、配列[0]にはマッチした文字列全体、配列[1]にはアンカー名、配列[2]には目次の名称が入るように、正規表現を作っています。具体的にはpatternの括弧にマッチした文字を代入してくれます。
ということで、その下の条件文でマッチ確認後、配列サイズ==3を確認しています。何で3?と思うかもしれませんが、先ほど説明した配列にどのような形で値が格納されるかを考えれば明らかです。
emptyで確認しているのは、空のアンカーや目次の名称を目次にしても意味がないから、です。
アンカー名と目次の名称が取得できたら、print文でリンクを作成するだけです。
preg_matchだけ分かりにくいと思いますが、リファレンス - preg_matchを参考に勉強してみてください(簡単なサンプルも豊富です)。
■Web API(PHP)に関連した書籍

PHP×WebサービスAPIコネクションズ(,ソフトバンククリエイティブ)
¥ 2,940 通常24時間以内に発送
Amazonポイント:¥ 29
レビュー数:4
●概要を知るには良いものの、基本部分がちょっと分かりづらい
様々なWebサービスの概要が書いてあるので、「こんなサービスがあるのか」という発見もあり参考になりました。●マッシュアップ本では一番好き
ただ、「どのようにパラメータを受け渡して、どのような値が帰ってくるのか」という基本部分が分かりづらく、この部分は本書ではなくホームページで探してしまいました。
また、PHPの基礎的な関数だけで取り出せるデータもあるのに、クラス、ライブラリ、オブジェクトを多用しているなど、PHP初級者やパッケージを利用せず一からプログラムを構築する人には分かりづらい内容です(プログラムを解析すれば分かるという話もありますが)。
評価とは関係ありませんが、PHP5を基本とした内容なので、いまだにPHP4を利用している私などには(ホスティングサーバーなので、自由にバージョンを上げられません…)、ちょっと使えないところもありました。
発売当初に購入して、いろいろと使わせていただいてます。●マッシュアップサイトを作る参考に!!
最近になってマッシュアップを題材にしたPHP関連の書籍が出てきていますが
、その中では一番とっつきやすく参考にしやすいです。
PHP初心者にはわかりずらい部分もありますが、ソースはAPI導入の始めからサイトとして成り立つまで書かれているので実用的だと思います。
単純に秋元さんのファンだったので、買いました。●最新Webサービスのとっかかりに。
S3やA9 OpenSearchなど知らなかったAPIなどもあり、参考になりました。
Webサービス系でいい本がなくて困ってたので重宝しています。
マッシュアップサイトを作る上でのアイデアも掲載されているので
マッシュアップサイトを作ろうと考えている人にオススメですね。
第2段も期待してます(でるのかな?)。
本書は2006年末現在、どのようなサイトがどのようなサービスを提供しているかをPHPのPEARパッケージを利用した簡単な例で紹介。
商品説明にあるサイトのほか、del.icio.usやテクノラティも取り上げています。
Webサービスの解説ドキュメントはそのほとんどが英語、あるいは直訳、あるいはそこそこの技術者寄りで、この本のように噛み砕いた説明はあまり出回っていません。
ユーザーインタフェース部分の実装やAPIの詳細な仕様などには触れていませんが、PHPの使い手でなくても、マッシュアップのアイディアを膨らませるのに役立つ内容です。これからWebサービスを使ったプログラミングアイデアを練ろうという方は、ネットを泳ぎ回ってあれこれ情報を探すより、この本に目を通すべきでしょう。
これ1冊だけではWeb API初心者は実装までは持っていけないと思われるので、3000円はちょっと高い。次版に期待し、星3つです。

ファイルメーカー Web パブリッシング FileMaker API for PHP コンプリートガイド(松林 弘治(監訳),アスキー)
¥ 4,179 通常24時間以内に発送
Amazonポイント:¥ 41
Warning: Invalid argument supplied for foreach() in /virtual/kommy/public_html/inc/func.php on line 75
■正規表現に関連した書籍

詳説 正規表現 第3版(株式会社ロングテール,オライリージャパン)
¥ 5,040 通常24時間以内に発送
Amazonポイント:¥ 50
レビュー数:2
●正規表現を確実にマスターできる
もし、正規表現をマスターしていなかったら、プログラムが書けても一人前とは言えない。そんなプログラマがいるのか?それがゴロゴロいるのである。●DOSのコマンドのような簡単なものから
この本は現在出版されている正規表現の類書の中で、唯一と言って良いほどの決定版的教科書だと思う。まず、この本なら正規表現が完全にマスター出来ると断言出来る。最初からこの本にしていたらどれだけ計り知れない利益があったことだろう。
この本は正規表現についての素晴らしさを説き、その理解への道筋をきちんと示して抜けるところがない。著者の仕事に感謝の念を禁じ得ない。
DOSのコマンドような簡単なものから、
sed, awkで使うような複雑なものまで、正規表現は強力である。
めったに使わない機能は、覚えていないので、解読するのが困難なことがあります。
可読性という意味で、正規表現を使ってもよい場合と、使わない方がよい場合について、分類するとよいかもしれません。

正規表現ハンドブック (Technical Handbook Series)(,ソフトバンククリエイティブ)
¥ 2,289 通常24時間以内に発送
Amazonポイント:¥ 22
レビュー数:2
●便利便利
正規表現勉強のため購入しました。●常に手元に置いておきたいリファレンス
正規表現の基礎知識に始り、「メールアドレスにマッチさせる」、「URLにマッチさせる」等具体的事例が多く参考になりました。
巻末のJava、perl等言語ごとのメタキャラ対応表も便利。
実務でそれほど正規表現を使用することはないが、いざと言うときにはなかなか正確な情報が少ないのが正規表現。ネット上にも、それらしき情報はあるが、本当に正しいかどうか疑問な場合がある。
本書の前書きにもあるように、内容の正確性を重要視しており、基礎から中級者向けに読み進められ、ケーススタディでは、よくあるパターンが注意点を含めて解説してある。
いざというときに、非常に役立つ良書である。

正規表現ポケットリファレンス (POCKET REFERENCE)(,技術評論社)
¥ 1,974 通常24時間以内に発送
Amazonポイント:¥ 19
レビュー数:1
●ポケット版で丁度良かったです
正規表現の基本中の基本ともなるとウェブで沢山の情報が出てきます。
なにも図書を買わなくても…と思うところもありますが、モニタに沢山のウェブブラウザを起動すると思考の整理がつかない。
そんな時に役に立つ1冊と思います。
私はプログラマのように作る側ではなく、管理するための知識さえあれば良いので高額なフクロウ本も不要です。
正規表現の記述を見た際に、「確か…これは…」でスグに手に取れるサイズっても嬉しいところです。
Linuxなんかでは正規表現が多用され、何が書かれているかわからない時にスグに調べられ、普段は邪魔にならない程度の資料としては評価の通りです。

入門 正規表現 ~検索・置換・テキスト処理に強くなる!(,技術評論社)
¥ 2,079 通常24時間以内に発送
Amazonポイント:¥ 20
レビュー数:2
●読みづらい...
内容がいろいろな機能、話題に発散していて、体系化されておらずひどく読みづらいです。「入門」と名を打っていますが、正規表現について体系化されておらず整理されていない、サンプルもパターンだけ、入力文字列だけなど対応付けがきちんとされておらず動かして確認するわけにもいかず、乱文のため難解です。●regular expression
内容については、「正規表現をスッキリ明快に把握し、理解してもらうために書いた」とありますが、類書のハウツー本とかわりがなかったです。
ハウツー本と割り切るなら他のハウツー本を買った方が良いと思いました。
正規表現は、英語ではregular expressionである。
GREPというコマンドは、Global Regular Expression Printの略であるので、全体の正規表現の検索結果を出力するというものである。
これは、SEDのコマンドで、GとPとの間に正規表現を記述することから来ている。
こういう歴史的な経緯を知っていることも、何かの役に立つかもしれない。
本書にも、いろいろな話題といろいろなハウツーを書いている。
利用したい状況によって、参考になる場合と、grep, sedの個別のコマンドの本を読んだ方がよい場合もあるかもしれない。

詳説 正規表現 第2版(田和 勝,オライリー・ジャパン)
レビュー数:5
●内容は大満足だけど高いです
「正規表現を使えば、データを制御し、思うがままに操ることができる。●噛めば噛むほど
正規表現をマスターすることは、データを支配することに他ならない。」
これは本書の筆者の言葉なのですが、正規表現の核心を突いた名言だと思います。
本書はデータを支配する事を目的とした書籍です。
正規表現といえば一昔前であればPerlというイメージがありましたが、
現在多く利用されている言語であるJavaや.NETでも正規表現がサポートされており、
正規表現の利用が身近になりました。
身近になった反面、単にネット上からシンタックスを調べて
使っている人も多いかと思いますが落とし穴があります。
プログラムで同じ処理をさせる為の方法はいくつかある場合があり、
その手法によって時間に大きな差が出る事があるのは既知かと思います。
実は同様の事が正規表現にも言え手法によって処理時間に差が出ます。
シンタックスしか知らない為の問題なのです。
正規表現は簡単なようで実は奥が深くも身に着ければ大変強力なスキルになりえます。
本書ではその為の正規表現の処理メカニズムを学習することができ、
正規表現の実践技法、工夫と学んだ知識を昇華させて行くことができます。
また、後半の3章ではPerl、Java、.NETに章が割り振られ詳しく説明されていますので、
各言語毎のスキルを身につけることができると思います。
正規表現なんて、シンタックスを覚えて、そこそこ使えればそれでいい、●正規表現の仕組みが分かります
と思っている人が多いと思う。自分もそうだった。
英文法を理屈抜きで公式のように覚えさせられたことは誰でも経験があるが、
実はほとんどの文法には、なぜそうなるのか、という理由がある。
それと同じように正規表現にも、なぜそういう動作をするのか、という理由がある。
この本はそれを教えてくれる。
成人した人間の脳というのは、まる覚えが効きにくい。
シンタックスだけ知っていればよいという方でも、中身の動作を知ったほうが、
かえって記憶に定着するのではないだろうか。
急がば回れ、である。
正規表現の内部処理や、挙動をとても分かりやすい口調で●正規表現を学びたい人が買う第一冊目に最適
教えてくれます。
この手の本は普通、”そうなるもんだ”という押し付けが多いのですが、この本は読み手に本当の理解をしてもらいたいという意図を感じ取れます。
本格的に本当のスキルとして正規表現を使ってゆきたいというひとにはお勧めです
インターネット上で正規表現命令を無料で調べることはできるが、本書では、正規表現の歴史から、動作条件の違い、プログラム言語による動作結果の差異などまで言及されている。●著者の努力に脱帽本書が最も優れているのは、正規表現がどのような思想の下で動作しているのか、その結果どのような正規表現命令を用いれば、求める結果が得られるのかを丁寧に解説してくれている。
そのため、丁寧に本書を読まないと、途中で本書の内容を理解できなくなってしまう。最近読んだコンピューター関連の書籍の中で、もっとも読み終えたページを読み返す回数が多かった。
正規表現のおかげで、プログラムの条件文が減ったり、ルーティンワークの負担が減ったりして、時間や資源をより有効に使えるようになった。
Perlを利用しない人でも、Perl互換の正規表現は非常に便利なので、本書を読んで損はしない。
正規表現をここまで楽しく読ませる本はあるのでしょうか?単なるリファレンスではなく、小説(詳説ではなく)を読むような感じでぐいぐい引き込まれます。第1版と異なり、Javaや.NETなどの話題も取り上げられていますが、やはり中心はPerlですね。しかしPerlに関する基本的な文法の説明もなされているのでPerl使いじゃない人も楽しめるんじゃないでしょうか。時々出題されるクイズも気に入りました。クイズだけの単行本も出して欲しいぐらいです。唯一残念なのがリファレンスカードが付いていないことでしょうか。取り外しができるリファレンスがあれば便利なんですけどね。

正規表現ケーススタディブック(,毎日コミュニケーションズ)
レビュー数:2
●中身の濃い本です
最近はいろんな言語やエディタで正規表現をサポートするようになり、実例集が一冊欲しいなーと思い購入。本書も「0.概要」でPerl、PHP、Javaなどそれぞれの言語での正規表現について簡単に解説してあります。総ページ数191ページと、手に取った感じ実例集としては薄め(ボリュームがない)に感じてしまいますが、ところがどっこい。各例とも単なる表現例にとどまらず、その組み立て方を順に解説してあり、自前で正規表現を考えなければならない場合の良い参考になります。見た目より中身の濃い本です。●正規表現のリファレンスに最適!
grepをはじめ、検索、置換処理を行うときに正規表現(regexp)を知っていると非常に便利です。この本は1章でメタ文字に関する説明を始め、残りでは非常によく使いそうな検索・置換パターンの正規表現例を記載してあります。IPアドレス、メールアドレス、日付などのものから、16進数、C言語のコメントなどすぐに使用したい例が多く載っています。各章ごとにカテゴリ分けされているし、ページ数もさほどではないので見つけたい処理はすぐに見つけられます。
1章で一通りのメタ文字を説明し、各例でどうしてこういう表現になるか解説があるので、応用するのは誰にでも簡単でしょう。日常的な事務仕事からプログラミングをする人まで幅広く読めて非常に分かりやすい内容です。

正規表現の達人 第2版(,ソフトバンククリエイティブ)
¥ 2,520 通常24時間以内に発送
Amazonポイント:¥ 25
レビュー数:1
●手っ取り早く使いたい人向け
基本正規表現と拡張正規表現の違い、Perl/Javascript/秀丸/他における正規表現の違いなどが説明されている。
順序立てて説明してあるが、堅苦しくない感じにまとまっている。
また正規表現の実践と称して、○○をするには?という疑問に対し回答が提示されている。これがかなり役に立った。
ツールとしてすぐに使いたい人におすすめ。

正規表現デスクトップリファレンス(Tony Stubblebine,オライリージャパン)
レビュー数:1
●正規表現を理解することで効率アップ
正規表現はPerl、PHP、.NETやC#ほかgrep系の検索・置換機能で多くの恩恵を与えてくれる。
サーバプログラムを作成するだけにとどまらず、改行コードをカンマに置換したりといった単純な処理をする際などにも有効だと思う。ただ、本書はPerl編、C#/.NET編といったようにやや言語系に偏った部分も含んでいるため、grepを使うことを前提とするならば、利用方法の例が記載された正規表現リファレンスを読むことをオススメする。

正規表現入門 (I・O BOOKS)(,工学社)
¥ 1,995 通常24時間以内に発送
Amazonポイント:¥ 19
Warning: Invalid argument supplied for foreach() in /virtual/kommy/public_html/inc/func.php on line 75

詳説 正規表現(Jeffrey E.F. Friedl,オライリー・ジャパン)
レビュー数:3
●正規表現美しいものです。
この本を読む前に、まー、正規表現なんかメタ記号をちょっと見れば使えるじゃないかなと思っていました。●正規表現を極めましょう
けど、この本を拝見しましたら、正規表現の芸術的なところに感心しました。自分で作ったものはこんなに美しくなりたい。プログラムの開発は何年経ったら、重複のものを作るのにもうあきました。けど、この本を読んだら、なんか変わりました。どんなものも磨ければ磨くほど美しくなる。今、そう思って、どんな仕事でも飽きなくやっています。
「正規表現の使い方は一通り知ってるけどもっと細かく知りたいなぁ」と思ってる方に最適だと思います。"分からない所を調べる"といったような使い方には向いていませんが、じっくり読んで使えそうなところをチェックしておくだけでスキルアップに繋がる事は間違いないでしょう。●Perlプログラマには実用的
正規表現は、主にUnix環境においてユーザサイド、 プログラマサイドの両方で広くつかわれている テクニックである。しかし一方、正規表現は本来の 表現力に対して、かなり限定された 用途でしか使われていないのが現状である。 そこで正規表現を、より深く掘り下げて理解する のにお薦めなのが本書である。特に Perl の正規 表現についてかなりのページが割かれているので、 正規表現を頻繁につかっているものの、実行の 効率が気になっているような Perl プログラマは、 ぜひとも本書を読むべきである。Perl の正規表現 だけでなく、その他のUnix ツールに使わ れている正規表現についても網羅している。


