2

我正在尝试创建一个正则表达式来匹配除 ACTIONLOGDIR="/vz/actionlog" 之外的任何其他内容。到目前为止,我想出了这个:

^(?:(?!ACTIONLOGDIR="/vz/actionlog)).*$

不幸的是,它也不匹配一些它应该匹配的东西。例如:

ACTIONLOGDIR="/vz/actionlog" - not matching, this is OK
ACTIONLOGDIR="/vz/blabla" - matching, is OK
ActionLogDir="/vz/actionlog" - matching, is OK
ACTIONLOGDIR="/vz/actionLOG" - matching, is OK
ActionLogDir="/vz/actionLOG" - matching, is OK
VIRTUOZZO="/var/actionlog" - matching, is OK
ACTIONLOGDIR="/vz/actionlog"""""" - this is not matching, it should
ACTIONLOGDIR="/vz/actionlog"ACTIONLOGDIR="/vz/actionlog" - this is not matching either

我也尝试使用:

^(?:(?!ACTIONLOGDIR="/vz/actionlog))["]{1}$

和其他几个变体......但这与任何东西都不匹配。

更具体地说,我正在寻找变量名称,如果该名称首先匹配,它应该在等号后面查找值,看看它是否正确。

任何帮助是极大的赞赏。

4

1 回答 1

4

好吧,不确定我是否清楚地理解了您想要匹配的内容,但是您可以尝试这个正则表达式,它适用于您发布的字符串:-

"(?!ACTIONLOGDIR=\"/vz/actionlog\"$).*"
于 2012-12-03T10:59:16.890 回答