Apache camel 如何使用camel中的excludePattern来删除标头?
我尝试使用camel的remove标头,它对某些模式有效,而对其他模式无效 它适用于以下模式Apache camel 如何使用camel中的excludePattern来删除标头?,apache-camel,fuseesb,jbossfuse,Apache Camel,Fuseesb,Jbossfuse,我尝试使用camel的remove标头,它对某些模式有效,而对其他模式无效 它适用于以下模式 <removeHeaders pattern="*" /> <removeHeaders pattern="CamelFile*" /> 这对我不起作用 <removeHeaders pattern="*File*" /> 是否预期会出现上述情况 此外,在排除模式中,我观察到通配符模式*根本无法识别 <setHeader header
<removeHeaders pattern="*" />
<removeHeaders pattern="CamelFile*" />
这对我不起作用
<removeHeaders pattern="*File*" />
是否预期会出现上述情况
此外,在排除模式中,我观察到通配符模式*根本无法识别
<setHeader headerName="firstCustomHeader">
<constant>firstCustomHeader</constant>
</setHeader>
<setHeader headerName="secondCustomHeader">
<constant>secondCustomHeader</constant>
</setHeader>
<setHeader headerName="thirdCustomHeader">
<constant>thirdCustomHeader</constant>
</setHeader>
<setHeader headerName="fourthCustomHeader">
<constant>fourthCustomHeader</constant>
</setHeader>
<removeHeaders pattern="*" excludePattern="fourth*|third*" />
firstCustomHeader
第二个自定义标题
第三个自定义标题
第四个头
上面删除了所有的头,但排除了excludePattern值
如何实现上述相关模式
驼峰版本2.13.1
pattern=“\w+文件\w+”
excludePattern=“第四个\w+|第三个\w+”
这些基本上都是可以测试的正则表达式。是的,要么使用正则表达式,要么最终使用单个
*
通配符。因此,*文件*
无效,因为它有两个*
,因此Camel假定它是正则表达式
所以你应该做一个正则表达式
pattern=".*File.*"
其中,如果您只有一个*
,这是匹配通配符的简写,但是*
必须仅在一行末尾,例如
pattern="File*"
这里记录了语法