为了账号安全,请及时绑定邮箱和手机立即绑定

preg_match 返回 1 虽然它不应该

preg_match 返回 1 虽然它不应该

PHP
一只名叫tom的猫 2021-11-13 15:54:22
echo preg_match("/090\d{5}/","090327112"); echo preg_match("/090\d{5}/","0903271122");这些回声中的每一个都是 1,我不明白为什么,它匹配 090 但它后面有超过 5 位数字......还使用了它https://regex101.com/并说:
查看完整描述

1 回答

?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

您在模式中缺少字符串的开头和字符串的^结尾$

echo preg_match("/^090\d{5}$/","090327112");

这将使它只匹配以 开头的字符串,090然后在字符串结尾之前有任何 5 位数字。

regex101 演示


查看完整回答
反对 回复 2021-11-13
  • 1 回答
  • 0 关注
  • 117 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信