gpt4 book ai didi

regex - 多个值的正则表达式负回顾

转载 作者:行者123 更新时间:2023-12-04 14:24:51 25 4
gpt4 key购买 nike

我想在我的日志中搜索异常。开始正则表达式:

\wException\b

( \w 是为了捕捉异常的名称,例如 InvalidOperationException,而不仅仅是“异常”这个词, \b 用于排除其他形式的异常,例如“SomeExceptionHandler”。)

这很有效,但我发现一个异常经常出现,我不感兴趣;让我们称之为 FooException .我改变了我的正则表达式以包含一个负面的回顾:
\w(?<!Foo)Exception\b

太好了,现在“FooException”已被排除。现在我发现 BarException也产生了很多噪音,我也想排除它。所以我想我会在lookbehind内部尝试一个管道:
\w(?<!(Foo|Bar))Exception\b

...但被拒绝为无效的正则表达式。

那么,如何在lookbehind中排除多个字符串?

最佳答案

您没有提到您使用的是哪种工具,但它很可能拒绝您的模式,因为大多数正则表达式风格不支持可变长度后视。
一个简单的解决方法是有多个后视:

\w(?<!Foo)(?<!Bar)Exception\b

您还可以匹配完整的异常:
\b(?!Foo|Bar)\w+Exception\b

关于regex - 多个值的正则表达式负回顾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47959727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com