使用“书签行”选项的 Notepad++ 搜索不会为与多行正则表达式匹配的所有行添加书签,而只会为第一个行添加书签

2024-01-02

我想过滤属于特定用户的日志中的所有内容。 使用以下模式并启用“. matches newline”选项,我可以匹配我正在寻找的所有内容,但是当我要求 Notepad++ 为这些行添加书签以便我可以复制它们时,会发生一些奇怪的事情。

([^\n]+)userB(.+?)(?=([0-9]{4}-[0-9]{2}-[0-9]{2}))

在第 2 行和第 8 行前面,我看到一个书签图标,但第 3、4、5 和 9、10、11 行缺少图标,尽管它们属于突出显示的文本。

为什么 Notepad++ 突出显示文本,但无法正确放置书签?更重要的是,我该如何解决这个问题?

这是我正在使用的日志:

2015-03-02 11:28:44,993 INFO  application [http-0.0.0.0-8080-17]            userA     99:7 12345 some message
2015-03-02 11:28:45,468 WARN  application [http-0.0.0.0-8080-9]             userB     12:2  some message
extra information
    at some.classes.and.function(Filename.java:123)
    at some.classes.and.function(Filename.java:123)
2015-03-02 11:28:44,993 INFO  application [http-0.0.0.0-8080-17]            userA     99:7 12345 some message
2015-03-02 11:28:44,993 INFO  application [http-0.0.0.0-8080-17]            userA     99:7 12345 some message
2015-03-02 11:28:45,468 WARN  application [http-0.0.0.0-8080-9]             userB     12:2  some message
extra information
    at some.classes.and.function(Filename.java:123)
    at some.classes.and.function(Filename.java:123)
2015-03-02 11:28:44,993 INFO  application [http-0.0.0.0-8080-17]            userA     99:7 12345 some message

以下内容将在不使用书签的情况下提取您想要的信息,并且应该适用于 Notepad++ 版本 6.9.1 及以上版本。
它假设额外信息行不以数字开头。
它会从数据文件中删除复制的行,因此如果您想保留数据文件,请处理数据文件的副本。
它的效率不是很高,因为切换选项卡命令将光标重新定位到选项卡文本的开头。
它复制了 userB 的最后一个匹配项。 (轻微刺激!)

描述

1) Define shortcuts for switching to next & previous tabs
2) Open the data file with Notepad++
3) Open a new tab then go back to the data file tab
4) Define a macro `Cut User data. Paste in next tab`  
5) Run the macro `Cut User data. Paste in next tab` on the data file to `end of file`
  (It needs to be run once prior to running it in `Run a Macro Multiple Times`
  because of a quirk of Notepad++)

Method

1) Settings Shortcut Mapper Main menu
Switch to previous document = Ctrl+Alt+Left
Switch to next document = Ctrl+Alt+Right
Close

2)用Notepad++打开数据文件

3) File New Ctrl+Alt+Left

4) Start Recording
Find找什么:.+ userB.+\r\n(\D.+\r\n)*
搜索模式 = 正则表达式
Find Next Alt+F4
Ctrl+X Ctrl+Alt+Right
Ctrl+End Ctrl+V Ctrl+Alt+Left
Stop recording
Save Current Recorded Macro
Name: Cut User data. Paste in next tab OK

5) Macro Cut User data. Paste in next tab
Run a Macro Multiple Times
要运行的宏:Cut User data. Paste in next tab
运行直到文件末尾 = 是
Run然后当它停止时Cancel

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用“书签行”选项的 Notepad++ 搜索不会为与多行正则表达式匹配的所有行添加书签,而只会为第一个行添加书签 的相关文章

  • 使用正则表达式匹配非单词字符但不匹配笑脸

    我有一个 Java 程序 它应该从字符串中删除所有非字母字符 除非它们是笑脸 例如 或 或 P 与相反的搭配非常容易 a zA Z P但我不知道如何否定这个表达式 由于我使用的是 String replaceAll 函数 因此它必须采用否定
  • 时间:2019-03-17 标签:c#regexmatchesexample

    我试图从以下文本中获取值 如何使用正则表达式来完成此操作 Input Lorem ipsum dolor sat download 456 amet consectetur adipiscing download 3434 elit Dui
  • 通过jquery在日期框中自动添加斜杠/符号[重复]

    这个问题在这里已经有答案了 我发现几个问题但没有答案 所以我问问题 如何添加自动斜杠 符号
  • 如何使用 regexp 来匹配 TCL 中的括号

    我有一个关于在 TCL 中使用正则表达式匹配括号的问题 例如我有一个像这样的字符串 yes it is true and it is fine 我只想匹配这部分yes it is true 如何搭配呢 您可以将括号括在字符类中 如 boba
  • 正则表达式匹配不可约分数

    我怎样才能匹配不可约分数 http en wikipedia org wiki Irreducible fraction用正则表达式 例如 23 25 3 4 5 2 100 101 等 首先 我不知道正则表达式中的gcd算法实现 Upda
  • Scrapy规则如何与爬行蜘蛛一起工作

    我很难理解 scrapy 爬行蜘蛛规则 我有一个例子 它并不像我希望的那样工作 所以它可能是两件事 我不明白规则是如何运作的 我形成了不正确的正则表达式 导致我无法获得所需的结果 好吧 这就是我想做的 我想编写爬行蜘蛛 它将获取所有可用的统
  • 有没有办法缩短这个正则表达式?

    以下正则表达式适合我的模式 但是 我想知道是否有办法缩短它 我不能使用 w 因为我只想要不区分大小写的英文字母 因为该模式重复 所以我想知道是否可以将其分组 如果可能的话 A Za z 5 A Za z 3 A Za z 3 A Za z
  • Notepad++ 下划线标签

    Notepad 似乎在标签下划线 包括打开和关闭 但到目前为止我只找到了它的一个实例 有人知道是什么原因造成的吗 目前的方法 要在 Notepad 中禁用链接下划线 Go to Settings gt 优先 gt 云与链接 gt 可点击的链
  • XRegExp 没有后视功能?

    我需要在JavaScript中使用正则表达式的lookbehind 所以发现在 JavaScript 中模拟lookbehind 第 2 步 https gist github com slevithan 2387872 另外 我发现作者
  • 包含某些特殊字符(排除所有其他字符)的密码的正则表达式

    我必须为指定为的密码提供数据注释正则表达式 min 8 chars min 1 upper min 1 lower min 1 numeric min 1 special char which can ONLY be one of the
  • 禁用特定 java 包的所有 checkstyle 检查

    我有两个包 即 com mydomain abc delegate xyz jaxws 托管 and com mydomain abc xyz jaxws managed 我要求仅对第二个包禁用 checkstyle 因为它们包含自动生成的
  • 需要一个数字或一个非字母数字字符的密码正则表达式

    我正在寻找一个相当具体的正则表达式 我几乎有了它 但还不完全有 我想要一个至少需要 5 个字符的正则表达式 其中至少有一个字符是either一个数值or非字母数字字符 这是我到目前为止所拥有的 d a z 5 20 所以问题出在 或 部分
  • 正则表达式引擎如何解析具有递归子模式的正则表达式?

    此正则表达式匹配回文 1 2 我无法理解它是如何工作的 递归何时结束 以及正则表达式何时从递归子模式中断并转到 part Thanks 编辑 抱歉我没有解释 2 and 1 1 指第一个子模式 对其自身 2 反向引用第二个子模式的匹配 即
  • 使用正则表达式正确替换缩写及其扩展

    我需要更换 HYD 和 HYD 带液压 但正如你所见 HYD 没有得到转换 我究竟做错了什么 console log HYD bHYD b gi test HYD OK console log HYD CYLINDER bHYD b gi
  • 如何使用斯坦福TokensRegex?

    我正在尝试使用斯坦福大学TokensRegex 但是 我在匹配器行中遇到错误 请参阅注释 它说 请尽力帮助我 下面是我的代码 String file A store has many branches A manager may manag
  • 用于匹配字符的正则表达式,但当它包含在方括号中时则不匹配

    输入字符串 Wsg Fs A A A Cgbs Sg7 Wwg s Fs A A Afk Cgbs Sg7 所需的输出是一个字符串数组 Wsg Fs A A A Cgbs Sg7 Wwg s Fs A A Afk Cgbs Sg7 如果我将
  • 尝试在 Linux 上使用 Clang++ 编译 c++11 正则表达式教程时出错

    我正在努力追随本教程 http solarianprogrammer com 2011 10 12 cpp 11 regex tutorial 关于 C 11 中的正则表达式 当我尝试编译这个小代码示例时 我收到这些错误 clang std
  • RewriteCond REQUEST_URI - ^ 未按预期工作

    我正在 codeigniter 中构建一个网站 我在 htaccess 文件中有一系列重写条件和规则 第一组规则根据 uri 的第一段打开或关闭 SSL 然后它再次循环 如果找到匹配项 则适当地重定向页面 如果没有匹配项 并且 uri 不以
  • 至少 6 个字符正则表达式 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在寻找至少检查 6 个字符的正则
  • 使用解析将 ** 运算符更改为幂函数?

    我的要求是将 运算符更改为幂函数 例如 1 Input B 2 Output power B 2 2 B 2 T 2 X Output power B 2 我写了下面的正则表达式来解决这个问题 rx r a zA Z0 9 a zA Z0

随机推荐