I have a perl script to pull out all occurrences of a files beginning with xx and ending in .p. I will then loop through all 1K files in a directory. I can grep for xx*.p files but it gives me the entire line. I wish to output to a single colum with only the hits found. This script needs to search for more than one occurrence per line regardless of the position or surrounding text.

The biggest problem with your regexp is the greedy match .* but your search criteria is too vague to want to try and post any code. For example, why does asdfxx.p but not xx5.p? Of course your regexp will not match asdfxx.p anyway. Please post some real sample data and explain the search criteria in more detail.

Both of you were correct. I inadvertantly left the asdfxx.p file in the "desired output". I indeed, did not want it to find that match.
I made the changes, as Mumford suggested, and it worked exactly as I wanted it to originally. Thank you both for your expertise!