我正在尝试编写一个正则表达式来查找字符串中特定单词不存在的情况。具体而言,我想知道当"trunk"、"tags"或者"branches"不存在时(这是用于Subversion pre-commit hook的),该如何操作。根据匹配不包含某个单词的正则表达式答案,我可以使用负向先行断言来轻松地处理一个单词的情况:
^((?!trunk).)*$
我正在遇到困难的是“and”运算符,而且我似乎不能让另外两个词也起作用。
在.NET中,单个单词已经可以正常运行:
var exp = new Regex(@"^((?!trunk).)*$");
exp.IsMatch("trunk/blah/blah");
如果代码第二行的路径中不存在"trunk",则该代码将返回true;否则,它将返回false。 我错在哪里了?