在PHP中遇到preg_match()问题

And*_*ers 1 php regex preg-match

我在PHP上有点生疏,所以请耐心等待.我正在制作一个简单的电子邮件表单,用于验证几个关键数据.其中一个字段是提交者的邮政编码.为了验证这一点,我认为正则表达式很简单,因为我非常有信心可以在一行中完成验证.看吧:

preg_match("^([0-9]{5}|[0-9]{5}\-[0-9]{4})$", $zip);
Run Code Online (Sandbox Code Playgroud)

这应该与12345和12345-6789相匹配.但是,这不会发生.我在这里俯瞰什么?

谢谢!

Sar*_*raz 5

缺少分隔符:

preg_match("/^([0-9]{5}|[0-9]{5}\-[0-9]{4})$/", $zip);
Run Code Online (Sandbox Code Playgroud)