1)使用c#regex
我目前有以下正则表达式
^(abc|def)$
如果单词是“abc”或“def”,则返回true 我需要的是它匹配除了那两个单词之外的任何东西,包括包含这些单词的字符串。 我目前这样做
Regex rgx = new Regex("^(abc|def)$");
if(!rgx.IsMatch(somestring)){
// do stuff
}
我想要的是一个正则表达式,我不必使用!运算符。所以我需要类似的东西(请参阅新正则表达式中的!运算符,但它不起作用。)
Regex rgx = new Regex("^(!(abc|def))$");
if(rgx.IsMatch(somestring)){
// do stuff
}
somestring的预期结果
blah - >真
abc blah - >真
abc - >假
def - >假
blah def - >真
希望这是有道理的...事先感谢。
只是为了澄清,我不想在字符串中找到单词,我想将整个字符串与正则表达式进行比较...因此 ^()$
至于为什么不使用!rgx.IsMatch,我只想说我只是想看看是否可以使用正则表达式
答案 0 :(得分:3)
你可以使用这个正则表达式。它会检查开始标记^
是否跟abc
或def
后跟$
结束。
^(?!(abc|def)$).*