Mattzです。 適当に必要と思われる部分だけ引用。 > 正規表現の[0-9]{4}は4桁の数字を意味していると思うのですが 違います。4回連続して出現する数字です。 > if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs)) { > $dateに"200456-8-234"と値を入れると > 23.8.0456と返ってきます。 結果をよく見てみれば分かるはずですが、 0456-8-23 上記の正規表現はこの部分にヒットします。 if (ereg ("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})$", $date, $regs)) { こうすればいいんじゃないですか? -- Mattz <mattz @ yahoo.co.jp>