Regex:如何匹配除test()之外的所有函数调用

Regex: How to match all function calls except test()?

本文关键字:函数调用 何匹配 test Regex      更新时间:2023-09-26

我正在读取一些文件内容,我想匹配nodejs中所有不是test()的函数调用。CCD_ 2可以具有任何类型的参数并且可以具有尽可能多的参数。并且所有匹配的函数应该包括所有参数,包括关闭)。例如

test({
  firstname: firstname({ userid: 12 }),
  lastname: lastname({ userid: 12 })
});

在上面的例子中,firstname和lastname是匹配的,结果匹配的字符串应该是firstname({ userid: 12 })lastname({ userid: 12 })

不要试图单独使用regex来解析。你可以用它们来帮助你,但不能用来做所有的工作。

例如,尝试使用'b[a-zA-Z]+'({(如果您的代码没有这里的示例那么干净,甚至可以使用'b[a-zA-Z]+'s*'('s*{)来匹配每个函数调用,然后迭代结果以找到不调用test的结果。