As
Corion said, whitespace is one possible reason that two strings you think are equal might not be equal to perl. Another possible reason is case - if one string is in upper case and the other in lower case, they will not be treated as equal. To get around that use something like (lc $member eq lc $who).