【发布时间】:2013-01-15 15:08:50
【问题描述】:
我正在为此寻找解决方案。选择 PHP 标记内的所有内容很容易(基本上),但我似乎无法得到相反的结果。
首先,我认为这是可行的:
/\?>(?<html>.*?)<\?|^(.*?)(?=<\?)|(?<=\? >)(.*?)$/
(在?> 和\ 和$ 之间的所有内容)
但这里的问题是,以<?php 开头的文件,直到文件末尾都没有其他结束标记,失败了。
归根结底,我只想匹配 <? ... ?> 之外的所有内容
THIS,<?php ... ?>
THIS<?php ... ?>
AND THIS
有人有想法吗?谢谢。
【问题讨论】:
-
如果里面的所有内容很容易全选,那你为什么不直接
preg_replace那些匹配呢?这样你最终会得到一个只包含 php 标签之外的内容的变量。 -
因为我仍然需要其余部分保持原样,将其用于 preg_replace_callback。我想操作php标签外的内容,基本不改动代码