怎么说这个正则表达式?

时间:2013-04-07 03:48:21

标签: java regex

我想要一个java正则表达式,可以用来匹配这个文本:

variable(X)

X可以是任何字符串,仅包含字符a-zA-Z0-9

但规则是X != tabX != foo

X也不能为空字符串。

同样X必须以a-z字符开头。

到目前为止,我有variable\([a-z]([a-zA-Z]|\d)*\),但我不知道怎么写不等于分...

1 个答案:

答案 0 :(得分:1)

这个正则表达式适合你:

^variable\s*\(((?!(?:foo|tab)\))[a-z][a-zA-Z0-9]*)\)

在Java中:

^variable\\s*\\(((?!(?:foo|tab)\\))[a-z][a-zA-Z0-9]*)\\)

现场演示:http://www.rubular.com/r/0TN8bmmQLS