gpt4 book ai didi

php - 正则表达式从php文件中获取特定的函数代码

转载 作者:行者123 更新时间:2023-12-04 04:52:04 25 4
gpt4 key购买 nike

我正在编辑一个 PHP 文件,用提供的另一个代码替换一个函数的代码。
我的问题是函数的代码可能会改变。所以,我不知道我应该如何做正则表达式来找到它。

下面是一个例子:

function lol()
{
echo('omg');
$num=0;
while($num<100)
{
echo('ok');
}
}
function teste()
{
echo('ola');
while($num<100)
{
echo('ok');
}
}
function test()
{
echo('oi');
while($num<100)
{
echo('ok');
}
}

我需要的是获取函数 teste() 的代码,这将是:
echo('ola');
while($num<100)
{
echo('ok');
}

但是:我不知道函数内部有多少时间、foreaches 或多少括号,我也不知道它的顺序。这个例子只是一个例子。

我怎样才能获得函数的代码?
提前谢谢你。

最佳答案

免责声明

正如其他用户所说,这可能不是一个好方法。如果您决定无论如何都要使用它,仔细检查您的结果 regex可能是危险的。

丑陋的解决方案

即使函数是最后一个(@Nippey),你也可以匹配类似的东西:

(?:function teste\(\))[^{]*{(.*?)}[^}]*?(?:function|\Z) 
Note:我正在使用 (?:xyz)用于 non-capturing parentheses group .检查您的正则表达式引擎是否支持它。

输出
    echo('ola');
while($num<100)
{
echo('ok');
}

关于php - 正则表达式从php文件中获取特定的函数代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17292140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com