【问题标题】:Filter by regex example按正则表达式示例过滤
【发布时间】:2014-11-27 07:54:39
【问题描述】:

谁能提供一个用于 Google Chrome 开发者工具栏的正则表达式过滤器示例?

我特别需要排斥。我尝试了很多正则表达式,但不知何故它们似乎不起作用:

【问题讨论】:

  • 会杀死一个 IE 用户以获得关于这个的答案

标签: regex google-chrome-devtools


【解决方案1】:

事实证明,谷歌浏览器实际上直到 2015 年初才支持此功能,see Google Code issue。使用较新的版本时效果很好,例如排除包含 banners 的所有内容:

/^(?!.*?banners)/

【讨论】:

  • 啊,刚刚发现这是a bug
  • 我希望我能给你 20 个更新。
  • 最近,Regex 复选框(以及通过正则表达式过滤的能力)似乎消失了。其他人看到了吗?
  • @Arjan,谢谢。我使用的是 57.0.2987.21 测试版(64 位)。它在该构建中丢失,并且显然在 58 中被使用 /regex/ 格式的“正确”实现所取代。如果您愿意,请获取 Canary 的副本以查看它的实际效果。
  • 你能解释一下为什么这个正则表达式 ^(?!.*?banners) 在开头没有 ^ 就不能工作吗? (我知道 ^ 是正则表达式中表达式的开始)
【解决方案2】:

这是可能的——至少在 Chrome 58 Dev 中是这样。你只需要用正斜杠包裹你的正则表达式:/my-regex-string/

例如,这是我目前正在使用的:/^(.(?!fallback font))+$/

它成功过滤掉任何包含子字符串“fallback font”的消息。

编辑

另外需要注意的是,如果要使用^(插入符号)符号从日志消息的开头进行搜索,则必须首先匹配“fileName.js?someUrlParam:lineNumber”部分字符串。

也就是说,正则表达式不仅匹配日志消息,还匹配生成日志的行的堆栈条目。

所以这是我用来匹配所有日志消息的正则表达式,其中实际消息以“Dog”开头:

/^.+?:[0-9]+ Dog/

【讨论】:

  • 顺便说一句:在 Chrome 79 中,没有一个答案对我来说可靠——包括列出的确切模式。由于他们以前工作过,我需要做更多的测试,看看是什么导致了一些失败。
【解决方案3】:

使用 DevTool 的本机语法时,否定或排除情况更容易编写和思考。要提供您需要的排除逻辑,只需使用以下代码:

-/app/ -/some\sother\sregex/

正则表达式前面的“-”使结果为负。

【讨论】:

    【解决方案4】:

    您的表达式不应包含正斜杠和 /s,这些不是制作过滤器所必需的。

    我相信你的正则表达式最终应该是:

    !(appl)
    

    取决于您要过滤的具体内容。 上面的正则表达式将过滤掉所有没有字符串“appl”的行。

    编辑:显然不支持排除?

    【讨论】:

    • 嗯,你是对的,正则表达式似乎可以正常工作,但排除不行:/
    猜你喜欢
    • 2016-01-19
    • 2018-11-24
    • 1970-01-01
    • 2015-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多