正则表达式负面看起来正在做一个正常的lookbehind或给出一个错误

时间:2012-10-04 16:34:33

标签: java regex

我正在尝试使用正则表达式来捕获具有负向外观的一些数据,因此如果某个字符串在它之前它将不匹配。我知道有两种基本格式,但都不起作用。 我在搜索应用中执行此操作,无法使用java进行扩充,因此解决方案必须纯粹使用正则表达式

这种格式给我一个错误,说“正则表达式语法错误:无效量词”

(?<!Product) Type : (.*?)<

此格式作为正常的lookbehind,仅在Type前面有Product:

时捕获

(?!=Product) Type : (.*?)<

我做错了什么?

1 个答案:

答案 0 :(得分:3)

(?<!Product)[ ]Type[ ]:[ ](.*?)<

这应该做你想要的。您必须将空格括在括号[]

不匹配:

Product Type : xyz<

但它会匹配并捕获xyz

Other Type : xyz<