Regex查找函数调用php

Regex查找函数调用php,php,regex,Php,Regex,我需要正则表达式在php中查找字符串中的函数调用,我曾尝试在这里搜索stackoverflow,但我尝试过的都没有成功 此模式:^.*[\w][\].[\] 这将匹配:functiononefgfg,但也将functiononefgfg dhgfghfgh functiontwo作为一个匹配。与FunctionOneFG和functiontwo中不同,没有两个单独的匹配项 我不知道怎么写,但我想这就是我需要的。 1.任意字符串,后跟 2.任何后跟 然后它应该停止,而不是继续。有没有能帮我的正则表

我需要正则表达式在php中查找字符串中的函数调用,我曾尝试在这里搜索stackoverflow,但我尝试过的都没有成功

此模式:^.*[\w][\].[\]

这将匹配:functiononefgfg,但也将functiononefgfg dhgfghfgh functiontwo作为一个匹配。与FunctionOneFG和functiontwo中不同,没有两个单独的匹配项

我不知道怎么写,但我想这就是我需要的。 1.任意字符串,后跟 2.任何后跟


然后它应该停止,而不是继续。有没有能帮我的正则表达式专家?

不要使用正则表达式。。。使用PHP内置的

不要为此使用regexp。。。使用PHP内置的

函数签名不是常规语言。因此,不能使用正则表达式来匹配函数签名。当前正则表达式将匹配无效函数签名的签名


我建议您使用PHP标记器。

函数签名不是常规语言。因此,不能使用正则表达式来匹配函数签名。当前正则表达式将匹配无效函数签名的签名


我建议您使用PHP标记器。

我发现您的正则表达式有5个问题

如果要匹配同一行中的两个函数,请不要使用锚定^,这会将正则表达式锚定到字符串的开头

这样您就不需要。*开始时可能更像\w+我不确定PHP中函数名的规范是什么

如果一个character类中只有一个条目而不是一个否定条目,则不需要character类

括号之间的量词必须是后跟?的惰性量词?。所以在这4点之后,你的正则表达式看起来像

\w+\(.*?\)
正则表达式真的是这项工作的合适工具吗


我发现你的正则表达式有5个问题

如果要匹配同一行中的两个函数,请不要使用锚定^,这会将正则表达式锚定到字符串的开头

这样您就不需要。*开始时可能更像\w+我不确定PHP中函数名的规范是什么

如果一个character类中只有一个条目而不是一个否定条目,则不需要character类

括号之间的量词必须是后跟?的惰性量词?。所以在这4点之后,你的正则表达式看起来像

\w+\(.*?\)
正则表达式真的是这项工作的合适工具吗


不要使用贪婪运算符。*,而尝试使用懒惰运算符。*?。请参见此处:使用$x=functionOnefunctionTwofgfg玩得开心;还有无数类似的置换,请尝试使用。*?,而不是贪婪运算符。*?,后者是懒惰的;还有无数类似的排列,有效点,无效参数,有效点,无效参数,这确实有效,非常感谢!但是你很好。Tokenizer可能是一个更好的选择,但它没有发现我的函数是函数,而是html。这确实有效,非常感谢!但是你很好。标记器是一个更好的选择,但它没有发现我的函数是函数,而是html。