如何删除特定字符串后的其余行?


12

我正在寻找一种搜索特定字符串的方法,例如'= UUID:'并删除它以及每行以下所有字符。我希望使用记事本++的方式/宏/插件。但是欢迎其他所有工具或脚本:)

之前

 *://81.88.22.6/*=UUID:63969B2469B7A94EBBDBD7CB5B9C00BA
 *://*-ad.cgi*=UUID:3C8EFF48B674CC42BF5B6E2B7BA820E7
 *://*-ads/*=UUID:0D6CF7D5BE3F034C8A136CC99A074406

请注意,每行数字总是不同的,因此您无法进行搜索'n替换。

之后应该看起来像这样

*://81.88.22.6/*
*://*-ad.cgi*
*://*-ads/*

Answers:


26

搜索模式正则表达式,查找

=UUID:.*

一无所有。


2
两个表达式之间的关键点就可以了。非常感谢你。
nixda 2011年

@nixdagibts并不是“两个表达式之间的点”。它搜索=UUID:,后跟任意字符(.)任何次数(*),有效地搜索“任意字符序列”,并在换行符处结束。
丹尼尔·贝克

3
@nixdagibts您将来可以尝试=UUID:[0-9A-F]{32}防止误报(例如,删除您想保留的内容)
丹尼尔·贝克

3

这简单。你的问题:

*://81.88.22.6/*=UUID:63969B2469B7A94EBBDBD7CB5B9C00BA
*://*-ad.cgi*=UUID:3C8EFF48B674CC42BF5B6E2B7BA820E7
*://*-ads/*=UUID:0D6CF7D5BE3F034C8A136CC99A074406

我的答案:

[=].*

结果:

*://81.88.22.6/*
*://*-ad.cgi*
*://*-ads/*

说明:

=字符,表示要删除的字符
。*字符,表示此后的所有字符

而已。


基本上与丹尼尔的答案相同。他建议使用来搜索=UUID:并删除该行的其余部分.*。您仅通过搜索第一个字符即可将其最小化=。此外,无需使用捕获组[]
nixda 2014年

-1

使用查找和替换:

  1. 按CTRL-H打开“替换”对话框
  2. 输入=UUID:.*查找内容
  3. 留空
  4. 选择正则表达式和.matches换行符
  5. 点击替换

1
您正在复制另一个答案
yass
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.