2014-03-05 263 views
1

我正在使用Vb.net并具有以下三行,只需要选择第三个离开第一个和第二个。我尝试过!(需要|估计)但它没有工作。正则表达式!(A | B)例如不是(a或b)

My reg expression is !(REQUIRED|ESTIMATED) also tried but did 
not work ^(REQUIRED|ESTIMATED) 

09359109359REQUIRED 00000000103332014022841000099999999900000000063140000000018570 
09359109359ESTIMATED00000000130452014030453000000001435000000000038560000000018570 
09359109359999999999000000000058671 

回答

5

正则表达式并没有真正的运算符,就像你正在尝试使用它。如果你想匹配不包含某个单词/单词的字符串,那么你可能不应该使用正则表达式。

如果你确实想要,不管出于何种原因,这里是你将如何解决你的问题。您必须使用负向前视来检查A或B.如果找不到A和B,则匹配整个字符串。看起来像这样:

^(?!.*(REQUIRED|ESTIMATE)).* 

^符号匹配行的开始。 (?!.*(REQUIRED|ESTIMATE))预见未来是否有REQUIRED或ESTIMATE,如果有则导致匹配失败。 。*匹配字符串的其余部分,如果它没有失败。

+0

非常感谢它的工作。 – ATHER

相关问题