正则表达式选择一个不具有某个单词的字符串,后跟一组特定的单词

时间:2010-10-31 17:53:10

标签: regex

如果字符串以jaxws.managed结尾但不包含delegate,我正在尝试查找将返回 true 的正则​​表达式。

例如:

abc/delegate/xyz/jaxws/managed应返回 false ,而

abc/def/xyz/jaxws/managed应该返回 true

我尝试使用正则表达式

([^(delegate)])+([a-z]*[\\/]jaxws[\\/]managed[\\/])+

但它失败了。

3 个答案:

答案 0 :(得分:1)

假设Java正则表达式,

^(?!.*delegate).*jaxws/managed$

答案 1 :(得分:1)

您应该指定正在使用的正则表达式引擎。

...尽管如此

如果它在任何地方包含“delegate”,则返回false:  /代表/; - >返回错误

如果我们不返回,并以“jaxws / managed”结尾,则返回true:  / JAXWS \ /管理$ /; - >返回true

如果您使用Perl,我建议使用m {}而不是//来避免“倾斜牙签综合征”。有关更多信息,请参阅perlre。

答案 2 :(得分:0)

如果您使用的是Javascript,则可以使用此regEx:

 **/^((?!(delegate)).)*jaxws\/managed$/**