Spring Integration不允许负面的背后隐藏

时间:2015-01-21 15:16:07

标签: java regex spring-integration

我使用spring-integration-file来监控文件夹。我需要忽略将.inprogress作为文件扩展名的文件。问题是正则表达式^(.*(?<!\.inprogress))$包含入站通道适配器中不允许的字符。使用它会抛出异常

  

org.xml.sax.SAXParseException:attribute&#34; filename-regex&#34;的值与元素类型相关联&#34;文件:inbound-channel-adapter&#34;不得包含&#39;&lt;&#39;字符。

我是否可以通过另一种方式编写表达式,以便它不会使用&#39;&lt;&#39;角色还是有另一种解决这个限制的方法吗?

我使用以下内容: spring-integration-file 2.0.5.RELEASE Java 1.6

2 个答案:

答案 0 :(得分:2)

您可以通过否定前瞻正则表达式来避免负面反对

^(?!.*\.inprogress$)(.*)$

RegEx Demo

答案 1 :(得分:1)

此外,如果您需要在XML中的字符串中声明<,请使用&lt;