初心者用PHP入門へようこそ 当HPは初心者のためにPHPを解説しています。

- 初心者用PHP入門 -




独習PHP 第3版
手を動かしながら学ぶPHP7。基本構文から、クラス、DB連携、セキュリティ対策まで。解説、例題、練習問題の3ステップでよくわかる。基礎からオブジェクト指向まで学べる定番入門書。

PHP逆引きレシピ 第2版 (PROGRAMMER’S RECiPE)
第2版では、最新のPHP(5.4/5.5)に対応したほか、レシピ全体の大幅な見直しを行い、データベースやテスト関連のレシピ拡充など、さらに内容充実・より便利になりました。サンプルプログラムのスマートフォン対応も行っています。実践で即役立つテクニックと開発ノウハウ、つまづきやすい・ハマりやすいポイントを徹底解説した「PHPユーザー必携の1冊」です。

PHPの絵本 第2版 Webアプリ作りが楽しくなる新しい9つの扉
HPは、さまざまなWebアプリケーションが簡単に作れそうなので、興味のある人は多いのではないでしょうか。本書は、イラストで解説しているので、難しい概念も直観的にイメージができ、理解が進みます。さぁ、PHPの扉を開き、できるプログラマへの道を進んでみましょう!

正規表現

 正規表現(regular expression)とは、文字列の集合を一つの文字列で表現するための表記法です。 PHPは、Perl互換正規表現とPOSIX拡張正規表現をサポートしてます。 当HPではPOSIX拡張正規表現の説明をします。

正規表現で定めたパターンと検索対象文字列が一致することをマッチングといいます。

先頭のマッチング 「 ^ 」
対象文字列: php script
マッチング: ^php
アンマッチ: ^hp

末尾のマッチング 「 $ 」
対象文字列: php script
マッチング: script$
アンマッチ: scri$

複数文字から1文字のマッチング 「 [ABC] 」
[ABC] → 「ABCのうちどれか1文字」

同種類の文字から1文字のマッチング 「 [A-Z] 」
[A-Z] 「大文字AからZのうちどれか1文字」
[a-z] 「小文字aからzのうちどれか1文字」
[0-9] 「数字のうちどれか1文字」
[A-Zj] 「大文字AからZとjのうちどれか1文字」
[a-c0-3] 「aからc、0から3のうちどれか1文字」

否定表現 []内の「 ^ 」
[^A-Za-z] → 「アルファベット以外の1文字」
[^A-Zabc] → 「大文字アルファベットとa、b、c以外の1文字」

任意の1文字「 . 」
対象文字列: abcdefg
^a.....g$ : マッチング

繰り返し表現
* 「0回以上」
+ 「1回以上」
? 「0回か1回」
{n} 「n回」
{n,} 「n回以上」
{n,m} 「n〜m回以上」

PHPではマッチングに ereg 関数を利用します。

int ereg ( 正規表現パターン , 文字列 [, 結果 ] )

文字列を正規表現パターンによりマッチし、 マッチした場合はマッチした文字列の長さを返し、 マッチしなかった場合は FALSE を返します。 結果にはマッチした文字列を格納する配列を指定します。 配列の0番目にはマッチした要素全体のコピーを保持し、 配列の1番目からは正規表現内の括弧で囲まれた部分でマッチしたものが、 順に格納されます。

以下にereg関数の使用例を示します。 正規表現パターンは小文字のアルファベット6文字です。 文字列が正規表現パターンにマッチングした場合、 その結果を出力しています。
また、大文字・小文字の区別を行わない eregi 関数があります。

<html>
<head><title></title></head>
<body>
<?php
  $moji = "test script";
  if(ereg("[a-z]{6}", $moji, $result)){
    print_r($result);
  }
?>
</body>
</html>
実行結果: Array ( [0] => script ) 

ereg関数の他に、 正規表現による置換を行うereg_replace関数や、分割を行うsplit関数があります。



[戻る]  [TOP]  [次へ]


This website is link free.
All graphics and page design, Copyright © 初心者用PHP入門
since 2005.12.10

スポンサー
脱ステロイドお腹が鳴る臭い対策