I was writing a command-line application for a client the other day, and I found myself wanting to support syntax like this: foobar *.foo *.bar foo*bar which is to say, "run foobar against files that end with .foo, end with .bar, or that start with foo...