Notepad++ – Find and Replace N Characters Long Random String Using Wildcards/Regex

find and replacenotepadregex

I have a SQL dump with expressions such as youtubehd:2nj6bykw. The 2nj6bykw can also be a different random string. It is always 8 characters long.

I want to replace youtubehd:2nj6bykw with just youtubehd.

How can I do this without replacing it manually, one by one? The SQL dump is over 230000 lines long and has about 200 occurrences of these strings.

I suppose I need a wildcard, but I have no clue about what it is and how I can do this.

Best Answer

Please make sure you have a backup in case something goes wrong.

  • In Notepad++ go to Search → Replace
  • In the Find What textbox paste the following: youtubehd:\w\w\w\w\w\w\w\w
  • In the Replace With textbox paste the following: youtubehd
  • Ensure that Search Mode is set to Regular expression
  • Click Replace All

Thanks to KCotreau for pointing out that search mode defaults to Normal and needs to be changed.

Edit:

It's been pointed out in the comments below that you could instead use youtubehd:\w{8} as your search pattern. This is correct and indeed preferable. Support for this was only added in Notepad++ v6 though which came out after this was originally written hence the reason why I used the longer form. See here for more.

Related Question