Php preg_match_all匹配多个字符串,并将值写在双引号中

Php preg_match_all匹配多个字符串,并将值写在双引号中,php,preg-match-all,Php,Preg Match All,最近关于php的preg\u match\u all,我得到了预期的完美解决方案,但现在我有了一些不同的场景 这是我的字符串: $html = '<p> This is my Home Page.</p><p><span style="line-height: 1.42857;"> {{ type="slider" pagename="slider-1" }} {{ type="banner" pagename=

最近关于php的
preg\u match\u all
,我得到了预期的完美解决方案,但现在我有了一些不同的场景

这是我的字符串:

$html = '<p> This is my Home Page.</p><p><span style="line-height: 1.42857;">
        {{ type="slider" pagename="slider-1" }} 
        {{ type="banner"  pagename="banner-1" }} 
        {{ type="testimonial"  pagename="testimonial-1" }}
        </span></p><p> </p>';
preg_match_all('/{{ type="(.+?)" }}/', $html, $matches, PREG_SET_ORDER);

echo "<pre>";

print_r($matches);

foreach ($matches as  $val) {

    echo $val[1];
    echo "<br/>";
}
?>
/{{ type=\"(.+)\"\s+pagename=\"(.+)\" }}/i
如何获取字符串中写入
{{
}
滑块
页面名
变量的值?

此处:

行动中:

此处:


行动中:

您是否尝试过测试?它的效果非常好,可能会教你如何添加第二个捕获组。你试过测试吗?它的工作奇迹,并可能会教你如何添加第二个捕获组我想你需要“m”的modifier@Mike那是什么?@Zanderwar你能为我们的讨论创建一个聊天室吗?因为你在
pagename
。谢谢@Mike,我想我在那里迷失了方向。我想你需要“m”这个词。”modifier@Mike那是什么?@Zanderwar你能为我们的讨论创建一个聊天室吗?这是因为你在
页面名之间有不同的空间。谢谢@Mike,我想我在那里迷失了方向
/{{ type=\"(.+)\"\s+pagename=\"(.+)\" }}/i