in reply to regular expressions

one way to do it is with a look behind assertion in a regular expression. (i.e. (?<!pattern) like the following:
while ( <DATA> ) { print if ( m/(?<!STOR)OMA$/ ); } __DATA__ OMA COMA STORAMA HISTOROMA PUMA MELANOMA STOROMA

where m/(?<!STOR)OMA$/ pretty much looks for a pattern exactly as you described.

-enlil