gpt4 book ai didi

包含具有特定术语的所有 catch block 的正则表达式

转载 作者:行者123 更新时间:2023-12-05 05:27:31 25 4
gpt4 key购买 nike

我最近看到这个 stackoverflow 问题排除了所有带有特定单词的 catch 语句。

Regex find catch blocks without log

catch\s*\(\s*\w*\s+\w*\s*\)\s*\{(?:[^}](?!\blog\b))*\}

你会如何做相反的事情?

我已经尝试将负面环视部分切换为正面环视部分,但所做的只是捕获空异常。

catch\s*\(\s*\w*\s+\w*\s*\)\s*\{(?:[^}](?=\blog\b))*\}

例子:

catch (Exception e) 
{
log.debug("word");
//stuff
}

我想找到“log.debug”的所有实例

最佳答案

您可以像这样使用积极的前瞻:

catch\s*\(\s*\w*\s+\w*\s*\)\s*\{(?=[^\}]*\blog\b)[^\}]+\}

(?=[^\}]*\blog\b) 这将检查该 catch block 中是否有任何 log 并且仅当有单词时才匹配 日志

如果您想找到 log.debug,只需将正则表达式编辑为:

catch\s*\(\s*\w*\s+\w*\s*\)\s*\{(?=[^\}]*\blog\.debug\b)[^\}]+\}

关于包含具有特定术语的所有 catch block 的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19190628/

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