我有一个短代码,我希望能够根据帖子的上下文将其删除。例如。
[tooltip slug="test"]Test Text[/tooltip]
我希望输出是:
<span class="dummy">Test Text</span>
我已经用 preg_replace 进行了(很多!)实验,但我似乎无法让它识别替换字符串位于“]”之间,然后由“[/tooltip]”分隔,而无需进行多次传递。
Ideas?
更新:正如经常发生的那样,在我写完这篇文章后大约 10 秒,我的一次尝试似乎奏效了。我认为它不如下面的解决方案那么好,但 FWIW...
$my_var .= preg_replace('/(?:\[tooltip slug=\"([^\"]*)"[^\>]*\]([^\<]*)\[\/tooltip\])/', '<span class="dummy">\\2</span>', $my_post->post_content);
这是您正在寻找的简单正则表达式。
$result = preg_replace('%\[tooltip slug="[^"]*"]([^[]*)\[/tooltip]%',
'<span class="dummy">\1</span>', $subject);
我们在这里所做的是捕获工具提示标签之间的文本,并将其插入替换中。
如果您需要任何详细信息,请告诉我。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)