読者です 読者をやめる 読者になる 読者になる

サーバー構築メモ

サーバーを構築したりWEBサイトを作ったりした際の個人的な備忘録です

PHP 文字列に対して正規表現によるパターンマッチを行う その4

PHP PHP-正規表現

その3はこちら。

指定した複数の文字どれかが含まれているか調べる

文字クラスを使う。

<?php
//"Windows 95"か"Windows 98"が含まれていればOK、でなければNGを出力
if (preg_match('/Windows 9[58]/', $string)) {
  echo 'OK';
} else {
  echo 'NG';
}
?>

「検証結果」

($string)  →  (出力)
'Windows 95'  →  OK
'Windows 98'  →  OK
'Windows 99'  →  NG

半角数字が含まれているか調べる

ハイフン"-"で範囲指定する。

<?php
//"Red Hat (半角数字)"が含まれていればOK、でなければNGを出力
if (preg_match('/Red Hat [0-9]/', $string)) {
  echo 'OK';
} else {
  echo 'NG';
}
?>

「検証結果」

($string)  →  (出力)
'Red Hat 0'  →  OK
'Red Hat 5'  →  OK
'Red Hat 9'  →  OK
'Red Hat E'  →  NG

半角英数字が含まれているか調べる

<?php
//"Mac OS (半角英数字)"が含まれていればOK、でなければNGを出力
if (preg_match('/Mac OS [A-Za-z0-9]/', $string)) {
  echo 'OK';
} else {
  echo 'NG';
}
?>

「検証結果」

($string)  →  (出力)
'Mac OS X'  →  OK
'Mac OS x'  →  OK
'Mac OS 9'  →  OK
'Mac OS #'  →  NG

半角英数字以外が含まれているか調べる

の中の先頭に"^"を使う。

<?php
//"Mac OS (半角英数字以外)"が含まれていればOK、でなければNGを出力
if (preg_match('/Mac OS [^A-Za-z0-9]/', $string)) {
  echo 'OK';
} else {
  echo 'NG';
}
?>

「検証結果」

($string)  →  (出力)
'Mac OS X'  →  NG
'Mac OS x'  →  NG
'Mac OS 9'  →  NG
'Mac OS #'  →  OK

メタ文字"^"は、先頭に置くと先頭を意味するが、文字クラス[]内の先頭に置くと否定の意味になるので注意。

 

その5はこちら。