PHPの正規表現で、以下の結果がint(0) int(1)になります。
$pattern="/(090|080|070)-{0,1}[0-9]{4}-{0,1}[0-9]{4}/u";
var_dump(preg_match($pattern, "080-12345-6789"));
var_dump(preg_match($pattern, "080-1234-56789"));
番号の二つ目と三つ目のかたまりは、4桁の数値になっていないとint(1)にはならないと思うのですが、なぜ二回目のver_dumpではint(1)となるのでしょうか?
最後のかたまりでは4桁以上の数値であれば、その後に数値が続いていても4桁目を確認次第、パターンにマッチしたと判定されるのでしょうか?
回答4件
あなたの回答
tips
プレビュー