我已经尝试了几种方法来实现这一点,基于手册页,但我似乎无法做到这一点,不管怎么说..
要从即将输出的部分内容中找到并替换它。
<!--nextpage--><!--tab_title:DAILYMOTION-->
[dailymotion xkbbmb]
<!--nextpage--><!--tab_title:DAILYMOTION-->
[dailymotion xkbbmf]
使用与此类似的模式:
[dailymotion + ] + <!--nextpage--><!--tab_title:DAILYMOTION-->
然后删除......
<!--nextpage--><!--tab_title:DAILYMOTION-->
因此输出:
<!--nextpage--><!--tab_title:DAILYMOTION-->
[dailymotion xkbbmb]
[dailymotion xkbbmf]
我发现尖括号很难处理,所以我想知道是否有正则表达式语法可能只是替换! - nextpage-左边的一个字符,并且右边的去掉了整件事情。还有更好的方法吗?
答案 0 :(得分:-1)
我认为你只需要摆脱尖括号就可以了。
preg_replace("#\[dailymotion .+?\](\<!--nextpage--\>\<\!--tab_title\:DAILYMOTION--\>)#s",'',$string);
答案 1 :(得分:-1)
就像Marc在评论中所说的那样,使用DOM更好,但是到底是什么,我会试一试
$output = preg_replace("~(\[dailymotion [^\]]+\])\s*<!--nextpage--><!--tab_title:DAILYMOTION-->~", "$1", $input);