用正则表达式过滤日志

含关键词1且含关键词2

^(.(?=.*关键词1)(?=.*关键词2))+.*$

例如:
在这里插入图片描述

含关键词1或含关键词2

关键词1|关键词2

例如:
在这里插入图片描述

排除关键词

^(.(?!关键词))*$

例如:
在这里插入图片描述

该正则表达式也可以拓展为^(.(?!关键词1)(?!关键词2))*$,以此类推,可以排除更多的关键词。

例如:
在这里插入图片描述

含关键词1,且关键词1的右侧不含关键词2

^.*(.(?=关键词1)(?!.*关键词2))+.*$

例如:
在这里插入图片描述

含关键词1,且关键词1的左侧不含关键词2

^(.(?!关键词2))*.(?=关键词1).*$

例如:
在这里插入图片描述

含关键词1,且关键词1的左侧不含关键词2,右侧不含关键词3

^(.(?!关键词2))*.(?=关键词1)(.(?!关键词3))*$

例如:
在这里插入图片描述

如果关键词2和关键词3为同一个关键词,那么就相当于“含关键词1且不含关键词2”,即^(.(?!关键词2))*.(?=关键词1)(.(?!关键词2))*$

例如:
在这里插入图片描述

相关工具

正则表达式 - 在线工具
正则表达式 - 可视化工具
RegExr – 正则表达式在线测试工具
Regulex – 正则表达式在线测试工具

猜你喜欢

转载自blog.csdn.net/jiejingguo/article/details/115750741