1

如果我有一个类似的公式:a + b - c * (exp(a*b) ) / 3

我只想匹配变量(a,b,c)。对我来说,[a-zA-Z]+完成了这项工作。但是我不想匹配exp函数。如何使用正则表达式实现这一点?我使用 javascript。

4

2 回答 2

1
([a-zA-Z]+)\b(?!\s*\()

可接受的变量名称的更常见概念是

\b([a-zA-Z_]\w*)\b(?!\s*\()

在函数名中带有点,它变成

(?:[^.]|^)\b([a-zA-Z]+)\b(?!(\.|\s*\())

(变量将在第一个捕获匹配中)

于 2012-05-27T16:14:46.540 回答
0

将其更改为\b[Az]\b将匹配不与其他字符相邻的单个 az 字母。

于 2012-05-27T16:05:09.413 回答