in reply to Fun with arrays

Do you have data in sequencial order ? ie.. wic1 => Wickliffe and wic2 => Wickville? If that's the case, it is very easy for you. From cityfile you can generate 'wic1' type entries, put it in the hash, read device file line-by-line and make outfile.
If that's not the case, then you can apply String::Approx to do matching.

artist.