正则表达式匹配除ACTION LOGDIR =“/ vs / action log”之外的任何其他内容

时间:2012-12-03 10:43:00

标签: regex regex-negation

我正在尝试创建一个正则表达式以匹配除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}$

以及其他几个变种......但这与任何事都不匹配。

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

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:4)

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

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