使用Log4J2替换多个RegEx

时间:2013-05-01 16:01:06

标签: regex log4j2

使用Java7和Log4J2

我在PaternLayout中有如下正则表达式:%replace {%msg} {(AcctNumber | AcctNumber2)([= \ ^])([0-9] +)([0-9] {4} )} {$ 1 $ 2 *的 * $ 4}

这将掩盖所有“信用卡”号码,并且工作正常。

我还想替换使用其他模式的消息中的另一个元素。有可能吗?

该元素的模式是:(Cvn)([= \ ^])([0-9] {3,4})并且必须用$ 1 $ 2 * * <替换/ p>

还可以与log4j2 RegEx进行Case Insensitive匹配吗?

最糟糕的情况我正在考虑推出自己的自定义PatternLayout?

1 个答案:

答案 0 :(得分:0)

我想我会编写自己的插件转换器并屏蔽我需要的所有字段,而不是尝试编写一些非常庞大的reg ex。我将分解为几种模式。

http://logging.apache.org/log4j/2.x/manual/plugins.html#Converters