This might not be what you're looking for, but could help you do something similar - the benefit of this is that it's extremely quick and easy. While I like Perl's regex a lot, for this kind of thing I usually use a unix command like:

grep -r -l -I -s THINGTOSEARCHFOR DIRECTORYTOLOOKIN | cut -d: -f1

For which I have an alias in my .cshrc:

alias scour 'grep -r -l -I -s \!:1 \!:2 | cut -d: -f1'

The syntax is "scour thingtosearchfor directorytolookin".

To search every file in a directory (recursively) for a particular grep argument. Comes in handy sometimes. With the current options it just outputs the filenames, but you could easily tweak that.