in reply to Recognizing tabs in unicode files

When you say Unicode, what encoding do you mean? The most popular and convenient Unicode encoding, UTF-8, and the one Perl likes to use, should be robust against this. Since you are testing for an ASCII character, even if there is non ASCII Unicode data in UTF-8, it would ne passed right through.

If you are dealing with another character encoding altogether, you should use a PerlIO layer to tell Perl what character encoding the data coming in are in.

# If your data are in the UTF-32, which is not ASCII compatible at all +! binmode FILE, ":encoding(UTF-32)";