搜索时如何忽略 Sublime Text 中的长行

How do I ignore long lines in Sublime Text when searching

我经常使用 Sublime Text 中的搜索功能来搜索文件夹 - 由于压缩代码、base64 编码数据或证书,其中一些文件夹包含非常长的行(1000 个字符长)。

返回的搜索结果通常如下所示(这在视觉上很烦人,而且在较短的字符串上给我意外匹配):

有什么方法可以从我的搜索结果中省略大于特定长度的行?

您可以(在一定程度上)使用否定前瞻和否定后视语法来实现您的目标。

假设您不想在搜索单词 MATCH 时包含任何超过 50 个字符的行,则以下正则表达式可以工作 (?<!.{46})MATCH(?!.{46})

场景(前 4 行匹配,后 3 行不匹配)

xxxxxxxxxxxxxMATCHxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx50
MATCHxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx50
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxMATCH
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxMATCHxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx95

MATCHxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx51
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxMATCH
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxMATCHxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx96

在此示例中,返回结果集中包含的最长行的长度为 95 个字符,因为单词 MATCH 前后有 45 个字符。所以不完美但很接近,为了您的目的,我相信它会排除那些超长的编码数据行。

您可以调整后视和前视的长度以获得您想要的结果。