Regex problem with leader

[email protected] ("Migell Acosta")
Newsgroups perl.perl4lib
Message-ID <[email protected]>
I am extracting the language codes from some MARC records using the leader
(field 008), position 35 and three characters long.  The code works fine as
long as the 008 does have a language code in it.  However, if there is no
language code, I want to assign the code "ENG".  The problem is my test for
an empty language code is not working.  I've tried a few variants of the
regex, but come up empty handed.  When I print out the empty language code
it is just three blank spaces, but my regex isn't picking that up.  Any
ideas would be greatly appreciated.

Here's the code snippet:

  ## get the language code from the 008 field

  my $leader = $record->field('008');
  my $language = uc(substr($leader->as_string, 35, 3));


  ### If there is no language code in the 008, assign ENG for ENGLISH

   if($language =~ /[^A-Z]/ ) {    ## I've also tried /^$/  and /[A-Z]{3}/
and a non regex comparison of  $language  == "   "


        $lang = "ENG";

   } else {

        $lang = $language;    ## from above



-- 
Migell Acosta
[email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.