使用正则表达式计算包含特定内容的php脚本

使用正则表达式计算包含特定内容的php脚本,php,regex,Php,Regex,我试图在混合html/php脚本中列出php块,其中包含某些信息。例如,文本是: bla bla <?php echo("hello world") ?> <?php echo($info["xx"]) ?> bla and bla bla bla <?php echo($info["yy"]) ?> bla bla and bla bla-bla-bla和bla 呜呜呜呜呜呜呜呜 我想列出包含“$info”文本的php块。预期结果必须是: &l

我试图在混合html/php脚本中列出php块,其中包含某些信息。例如,文本是:

bla bla <?php echo("hello world") ?> <?php

echo($info["xx"])

?> bla and bla

bla bla <?php

echo($info["yy"])

?> bla bla and bla
bla-bla-bla和bla
呜呜呜呜呜呜呜呜
我想列出包含“$info”文本的php块。预期结果必须是:

<?php

    echo($info["xx"])

    ?> 


我尝试了
//g
,但首先它不搜索$info,它返回从firs php到最后一个php块的所有字符串。

您可以使用

'/<\?php\s(?:(?!<\?php\s|\$info).)*?\$info.*?\?>/s'

“代码>”/使用一个标志并在每个PHP块中增加它。@ OzkanTuzemen,如果这个回答了你的问题,请考虑标记接受的答案(在下/下投票箭头下的复选标记)。看见
'/<\?php\s(?:(?!<\?php\s|\$info).)*?\$info.*?\?>/s'