【Step7】 正規表現 

入力データの形式チェックをするときに、正規表現によるパターンマッチングがよく使われます。パターンマッチングとは、正規表現で記述された「パターン」と照合して、一致したときに「マッチする」という意味です。特殊な記号を組み合わせて検索パターンを指定することができます。

ereg()関数 

引数で与えられた文字列と、パターンの一致するものを検索します。正規表現にマッチした場合Trueを返します。

《構文》

ereg (pattern, string, [regs])

正規表現で使う代表的名パターン

パターン
意味
特殊この記号の後の特殊文字をそのまま出力する  
入力の開始と一致 ^[0-9]   数字で始まる
$ 入力の末尾と一致 $[0-9]   数字で終わる
* 前方の文字が0回以上の連続する文字 fo*    "f"や"foo"などと一致
+ 前方の文字が1回以上の連続する文字 fo+    "fo"や"foo"などと一致
{n} n回以上の連続する文字 [0-9]{5}  数字5字以上に一致
{n,m} n〜m回まで連続する文字 [0-9]{1,5} 数字1〜5文字に一致
\n 改行文字  
前方の文字が1つまたは全くないもの  

 

《サンプル》 文字列の部分一致

<?php
  $str1 = "雨が降っています。";
  $str2 = "明日は晴れるでしょうか";
  if (ereg("^雨",$str1)) echo ("雨から始まります<br>\n");
  if (ereg("?$",$str2)) echo ("かで終わります<br>\n");
?>

《実行結果》


Fatal error: Uncaught Error: Call to undefined function ereg() in /home/jeanluc/www/chie/zaitaku/php/study/step7.php:115 Stack trace: #0 {main} thrown in /home/jeanluc/www/chie/zaitaku/php/study/step7.php on line 115