使用通配符/正则表达式在Notepad ++中查找并替换n个字符长的随机字符串


9

我有一个带有诸如的表达式的SQL转储youtubehd:2nj6bykw。该2nj6bykw也可以是不同的随机字符串。它总是8个字符长。

我要替换youtubehd:2nj6bykw为just youtubehd

我如何才能做到这一点而又不手动一一更换?SQL转储的长度超过230000行,其中约有200个出现这些字符串。

我想我需要一个通配符,但是我不知道它是什么以及如何实现。

Answers:


15

请确保您有备份,以防出现问题。

  • 在记事本++中,转到搜索→替换
  • 在“ 查找内容”文本框中,粘贴以下内容:youtubehd:\w\w\w\w\w\w\w\w
  • 在“ 替换为”文本框中,粘贴以下内容:youtubehd
  • 确保搜索模式设置为正则表达式
  • 单击全部替换

感谢KCotreau指出搜索模式默认为“正常”并且需要更改。

编辑:

在下面的注释中已经指出,您可以将其youtubehd:\w{8}用作搜索模式。这是正确的,的确是可取的。仅在Notepad ++ v6中添加了对此功能的支持,尽管该功能最初是在编写此功能后才发布的,因此是我使用较长格式的原因。看到这里更多。


1
+1我一直在努力寻找解决办法。它应该很简单,但是却不容易找到。我测试了它,它确实起作用。我将添加:选择“正则表达式”作为搜索类型。
KCotreau,

更优雅的是:youtubehd:\w{8}对于固定长度和youtubehd:\w*任何长度
AndriuZ

@AndriuZ:我知道\w{8}语法,但是据我所知Notepad ++当时不支持该语法,我相信它是在以后的版本中添加的。我可能会在某个时候更新答案以反映这一点。
詹姆斯·P

@James P当我在Np ++ 7.4.2 32bit上进行测试时可以正常工作
AndriuZ
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.