/_Use David's "how many colons did I get?" algorithm to find out if you need /_to care. For future stuff get the cgi fixed. What I often do is use double /_or triple colons as the delimiter, then disallow that many in input. Guess I /_could still get bit by "V:NN: FURN:3R", who would become "V:NN IFURN:3R" if /_fname and lname were stored in that order. /_ I did try David's suggestion to use tr///. Good suggestion in why worry/code against something that may not exists. Out of 9,000 entries, I have 10 bad ones(lines). Ten out of 9,000 lines I can deal with. David, BTW CPAN did not have the Magic module. :-) You must guard it closely. v/r -Mike