'Notepad++ find in files filter EXCLUDE

I'm looking for a way to get n++'s find in files dialog to exclude certain files...

the only reference I've found so far is this http://sourceforge.net/project/shownotes.php?release_id=536795&group_id=189927 , but, unfortunately, it doesn't work.

I'm using *[^*.dll] to, I think, search for everything BUT dll files.

How can I resolve this ?

Thanks



Solution 1:[1]

Note, as of December 5th, 2019, Notepad++ 7.8.2 now supports exclude filters. The help documentation describes exclude filters in the Find in Files tab section.

For example to exclude exe, zip and jar files, your 'find in files' filter will look like this;

*.* !*.exe !*.zip !*.jar

Relevant code change in the GitHub commit.

Solution 2:[2]

not that its a GOOD answer, but, what I've found that works is this

*.sql ; *.asp ; *.html ; *.as ; *.mxml

Its definitely not an 'exclude' list, but, by including all the types I need to look at, I get the same result. In my case, I've only got those handfuls of types that I look for often. If your set was wider, this would become even less useful.

Solution 3:[3]

I got a tip from another forum that helped me solve this. Mark the folders you want to exclude as 'hidden'. By default the 'Find in Files' in N++ excludes hidden directories. You can then revert the hidden directories when you're done.

A little tedious, but better than nothing.

Solution 4:[4]

Perhaps the real answer is don't use NP++ for this. Have you looked at http://www.wingrep.com/features.htm or

Edit: I use https://tools.stefankueng.com/grepWin.html these days

Solution 5:[5]

There may be a more elegant way, but you could use PowerShell to get all of the extensions in a folder, and then just remove the ones you don't want. This example gets all of the extensions in the "C:\Program Files\Internet Explorer" folder.

NB: don't forget to surround (Get-ChildItem ... -join ";*" with parentheses.

"*" + ((Get-ChildItem -File -recurse "C:\Users\SomeUser\Documents\Visual Studio 2013\Projects\WindowsService1" | Where {$_.Extension -ne ""}| Select-Object Extension -unique | Sort-Object Extension | Get-Unique -asString  | Select -ExpandProperty Extension | % { $_.ToLower() } | Get-Unique) -join ";*")

This returns:

*.cache;*.config;*.cs;*.csproj;*.exe;*.jmconfig;*.manifest;*.settings;*.sln;*.txt

Then just remove what you don't want.

Solution 6:[6]

Please note tested with Notepad++ v7.8.7

as n00b has answered

This works:

*.* !*.obj

But this does not work!: *.*;!*.obj => searches no files!

on the other hand this does work *.*; !*.obj

Solution 7:[7]

I just had the same problem and found a 3-step solution:

  1. Search in all files
  2. Copy the result as text in a new Notepad++ tab
  3. Use a regular expression to remove all entries that do not interest you

Here is my RegEx (the two spaces at the start are relevant):

  M:\\.+?\\([^\\]+\.(csproj|dll)|packages\.config|Build\.props) \(\d+ hits?\)([\r\n]+\t.+)+[\r\n]+

All my results where on M:, you will have to adapt the start to what fits your results. If you run a "Replace all" with an empty string it removes all results in files ending with "csproj" or "dll", and also in the files "packages.config" and "Build.props".

Solution 8:[8]

The solution from https://notepad-plus-plus.org/community/topic/10653/exclude-directories-from-the-search/5 is to temporarily set those folders you want to exclude to be 'hidden' folders (hiding just the top level sub-dir is sufficient), and this then stops Notepad++ descending into that sub-directory.

Worked for me just now!

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Laurel
Solution 2 reidLinden
Solution 3 Shane N
Solution 4
Solution 5 Jaroslav Loba?evski
Solution 6 phamuc
Solution 7 DerJochen
Solution 8 Philip Oakley