preg_match只给出一个匹配

时间:2012-07-25 19:02:04

标签: php regex preg-match

我正在尝试创建一个url处理程序,我尝试使用preg_match来查找变量。 所以这里是变量替换url格式后得到的preg_match(例如:post /%id%/%title%) -

preg_match("/post\/[0-9]+\/[a-z-א-ת-]+/i","post/5/lol",$match);

我的问题是$ match只返回这个内部数组 -

  

“后/ 5 /洛尔”

而不是那样的数组 -

Array ( 
        [0] => "post/5/lol",
        [1] => "5",
        [2] => "lol"
      )

有人可以帮助我找出为什么它只返回一场比赛吗?

1 个答案:

答案 0 :(得分:6)

用括号包裹您想要捕获的每个片段,创建子表达式:

preg_match("/post\/([0-9]+)\/([a-z-א-ת-]+)/i", "post/5/lol", $match);