构建一个以string1开头但不以string2结尾的正则表达式

时间:2014-01-16 05:21:27

标签: regex

这是我的测试清单:

compiz
compizconfig-settings-manager
compiz-fusion-bcop
compiz-plugins-default
compiz-plugins-main-default
compizconfig-backend-gconf
compiz-corecompiz-gnome
compiz-plugins-extra
compiz-plugins-main-dev
compizconfig-backend-kconfig
compiz-dev
compiz-plugins
compiz-plugins-main

我是正则表达式noob并尝试匹配compiz-*(?!-dev)
compiz-开头但未以-dev结尾的任何内容

我正在使用http://www.regexr.com/测试我的字符串而且我迷路了。

^compiz

仅匹配compiz但不跟随它。我知道(?!-dev)应排除-dev的结尾但是如何告诉它在字符串后继续?

^compiz(!?-dev)

仅匹配compiz-dev

如果有甚么意义如何!应该说排除?

1 个答案:

答案 0 :(得分:1)

你的正则表达式如下:

^compiz(?!.*-dev$).*

示例:http://regex101.com/r/dB9iE6