2012年11月29日木曜日

開発環境

『初めてのPHP5』 (David Sklar 著、 桑村 潤 翻訳、 廣川 類 翻訳、 オライリー・ジャパン、2005年、ISBN978-4-87311-257-2)の付録 B (正規表現の基本)B.8(演習問題)1を解いてみる。

1.

PHPのコード(TextWrangler)

sample76.php

<?php
  $numbers = array(
    "(718) 498-1043",
    "(718) 498 1043",
    "718 498 1043",
    "718 498-1043",
    "718-498-1043",
    "718.498.1943",
    "7184981943",
    "7184-98-1943");
  $pattern = '/^\(?\d{3}\)?[- \.]?\d{3}[- \.]?\d{4}$/';
  var_dump($numbers);
  foreach($numbers as $key => $value){
    if(preg_match($pattern, $value)){
      print "true: {$value}<br />\n";
    } else {
      print "false: {$value}<br />\n";
    }
  }
?>

HTMLソース

array(8) {
  [0]=>
  string(14) "(718) 498-1043"
  [1]=>
  string(14) "(718) 498 1043"
  [2]=>
  string(12) "718 498 1043"
  [3]=>
  string(12) "718 498-1043"
  [4]=>
  string(12) "718-498-1043"
  [5]=>
  string(12) "718.498.1943"
  [6]=>
  string(10) "7184981943"
  [7]=>
  string(12) "7184-98-1943"
}
true: (718) 498-1043<br />

true: (718) 498 1043<br />

true: 718 498 1043<br />

true: 718 498-1043<br />

true: 718-498-1043<br />

true: 718.498.1943<br />

true: 7184981943<br />

false: 7184-98-1943<br />

0 コメント:

コメントを投稿