【问题标题】:Single line regex search in Notepad++Notepad++ 中的单行正则表达式搜索
【发布时间】:2020-05-04 12:16:47
【问题描述】:

当我在 Notepad++(7.8.6 版)中使用“查找下一个”来查找正则表达式的下一个匹配项时,匹配项可以跨越多行。有没有办法将匹配限制在一行,即分别搜索每一行?

【问题讨论】:

  • 这取决于您使用的模式。
  • 例如:[^57]{7,}
  • 然后添加\r\n: [^57\r\n]{7,} - 它将匹配除57、CR 和LF 字符之外的7 个或更多字符。
  • 这只是一个例子。我不想使模式复杂化,只需关闭多行模式即可。就像我在 Linux 中不使用 -M 选项运行 pcregrep 一样。
  • 那你就不走运了——这是不可能的。使用你当时提到的工具。

标签: regex notepad++


【解决方案1】:

Notepad++ 中没有禁用多行匹配的选项。

查找结果窗口中的匹配文本被截断,这并不意味着Notepad++可以“设置”为单行搜索。

. 匹配换行符”选项仅影响 . 行为:如果该选项为 OFF,. 默认不匹配换行符。

但是,\s任何空白字符)、\W任何非单词字符)、[^57]任何字符,除了@ 987654327@ 和 7) 模式仍然可能从一行到另一行“溢出”,因为换行符是这些模式匹配的字符之一。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-12
    • 1970-01-01
    • 1970-01-01
    • 2020-02-02
    • 2018-08-24
    • 2018-01-17
    相关资源
    最近更新 更多