我想在 vanilla JS中的任何数学公式中获取函数数组和变量数组/ strong>:
样本:
1+3*9/cos(4+2*x/6+pol)+
BDLIRE(longueur2)+2*8+sin(2)
+g()
获取我使用的功能:/([a-zA-Z]+)(?=[(])/gm
https://regex101.com/r/fT3iM7/1
为了获得我试过的变种:/([a-zA-Z]+[a-zA-Z0-9]?)(?!\()/gm
https://regex101.com/r/mG2fQ2/1
但是你可以看到它忽略了匹配的最后一个字符,后跟一个(
字符
所以我对我的正则表达式有点困惑以匹配变量。
感谢您的帮助:)
答案 0 :(得分:0)
你不能使用RegEx来解析算术表达式,也许你可以,但是你会有一个不稳定的实现并写它会让你疯狂。
你需要研究解析器。查看PEG.js,它是一个易于使用的框架,用于编写编译成JS的解析器,因此它是“vanilla”(无论你的意思是什么......):