FilenameFilters you can use in your own Java programs with
File.list( FilenameFilter f ). They can also be used
standalone as fancy dir commands.

They come with Java source and include:

AllDirectoriesFilter  gets all directories
AllFilesFilter        gets all files
ClamFilter            simple wildcard
DirListFilter         gets a list of directories
EndsWithFilter        gets files whose names end with a given string.
EverythingFilter      gets everything
ExtensionListFilter   gets files matching a list of extensions
                      (formerly ExtensionFilter)
FileLengthFilter      gets short or long files
FileListFilter        gets a list of files
                      (used to be called ListFilter)
FilenameLengthFilter  gets short or long filenames
JunkFilter            used to find junk files by name, extension,
                      startsWith or endsWith lists.
MultiFilter           combines other Filters with
                      "consider", "must" and "never".
NoFootFilter          accepts *.html but not *.foot.html
RecentFilter          filters based on lastModified date
RegexFilter           filters with Regex expressions.
RecentFilter          filters based on lastModified date
RegexFilter           filters with Regex expressions.
StandAndEndWithFilter include/exclude depending on start/endings of filenames
StartsWithFilter      gets files whose names start with a given string.

Why that orange disc icon?  It represents a photographic
filter that filters light, is an analogous way the filter
class filters files.

----

Version History:

1.3 adds discussion of the windows command line
wildcard expansion and its dangers.

1.4 renamed ListFilter to FileListFilter
It also added ExtensionListFilter

1.5 now uses Java 1.5 type checking. It also
adds the -q command line option to suppres the new
statistics displayed about files gathered from each
directory.

1.6 uses String... in constructors rather than
String[] to let you just specify a variable number of String
arguments.

1.7 tidied the source with IntelliJ.

1.8 refactors the CommandLine class so you can use
it with for:each or with Iterators as before.

1.9 adds StartsWithFilter and EndsWithFilter.

2.0 tidies code.

2.1 adds PAD and icon.

2.2 adds CommandLine.isQuiet to detect the -q option.  You
now iterate the CommandLine directly.

2.3 2007-08-27 adds JunkFilter, formerly part of Bakik.

2.4 2009-02-27 now CommandLine sends output to SysErr rather
than SysOut to avoid contaminating the outputstream.

2.5 2009-02-28 no longer includes CommandLine. It is now
packaged separatey.

2.6 2009-05-10 add StartsAndEndsWithFilter and NoFootFilter

-30-

