我有一堆代表数学函数的字符串(可以嵌套并且具有任意数量的参数),并且我希望能够使用regex返回字符串数组,每个字符串都是最外部函数的参数。这是一个例子:
"f1(f2(x),f3(f4(f5(x,y,z))),f(f(1)))"
我想要一个可以用来获取f1所有参数的数组的正则表达式模式,在这种情况下,它们是字符串“ f2(x)”,“ f3(f4(f5(x,y,z)) )”和“ f(f(1))”。输入字符串中将没有空格。
非常感谢任何可以提供帮助的人。
最佳答案
我不认为仅靠正则表达式就可以做到这一点。
这可能需要能够识别出平衡的括号-例如,一旦我们解析了f1(f2(x)
,下一个字符可能是)
或,
,这是一个可以正则表达式无法完成,但是需要更复杂的解析器。