我试图通过在logback.xml文件中链接replace regex来屏蔽日志。
%replace(%replace(%msg){'"email":(.*?),','"email":"****"'}){'"phone":(.*?),','"phone":"****"'}))
它是有效的,但是有没有其他的regex解决方案来代替regex替换链接?
我们可以像这样使用regex吗?
(%replace(%msg){'"(email|phone)":(:*?)','"***",'}
我试过上面的,但格式不合适。
所需输出为:
{"email":"****","phone":"****"}
您可以使用
(%replace(%msg){'"(email|phone)":[^,]*,?','"$1":"****"'})
"(email|phone)":[^,]*,?
正则表达式与匹配
"
-一个"
字符(email|phone)
-组1($1
(:email
或phone
字符串":
-":
字符串[^,]*
-逗号以外的零个或多个字符,?
-可选的,
字符
替换为"$1":"****"
:"
+组1值+":"***"
。
请参阅regex演示。