improve is_qra checker
authorminima <minima>
Tue, 9 Jul 2002 11:16:53 +0000 (11:16 +0000)
committerminima <minima>
Tue, 9 Jul 2002 11:16:53 +0000 (11:16 +0000)
Changes
cmd/show/dx.pl
perl/DXUtil.pm

diff --git a/Changes b/Changes
index 10203196a270a937419951f3b98431b705eef69e..c36cc5165fbf82953827fab4226c28a31c619814 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,3 +1,5 @@
+09Jul02=======================================================================
+1. make the is_qra more accurate (from Mark HB9DBM).
 04Jul02=======================================================================
 1. added another fix to Prefix.pm so that it resolves Japan callsigns again
 also you can 'set/debug prefix' to see what it is trying to do.
index 6d9ad3add54c47abae7c2203a57dc05b52a91d25..f9d03f623dc0956676e068216691330e5bf03db7 100644 (file)
@@ -82,7 +82,7 @@ while ($f = shift @list) {            # next field
                my ($a, $b);
 #              $DB::single =1;
                
-               if ($list[0] && (($a, $b) = $list[0] =~ /(AF|AN|NA|SA|EU|AS|OC)-?(\d?\d\d)/oi)) {
+               if (@list && $list[0] && (($a, $b) = $list[0] =~ /(AF|AN|NA|SA|EU|AS|OC)-?(\d?\d\d)/oi)) {
                        $a = uc $a;
                        $doiota = "\\b$a\[\-\ \]\?$b\\b";
                        shift @list;
@@ -91,7 +91,7 @@ while ($f = shift @list) {            # next field
                next;
        }
        if (lc $f eq 'qra') {
-               $doqra = uc shift @list if $list[0] =~ /[A-Z][A-Z]\d\d/oi;
+               $doqra = uc shift @list if @list && $list[0] =~ /[A-Z][A-Z]\d\d/oi;
                $doqra = '\b([A-Z][A-Z]\d\d|[A-Z][A-Z]\d\d[A-Z][A-Z])\b' unless $doqra;
                next;
        }
index 4ea3782ef4ccda85415b55a995cec44673cccdd9..d88ec0af4d57880cb5b2bde68a9e32243907e749 100644 (file)
@@ -371,7 +371,7 @@ sub is_digits
 # does it look like a qra locator?
 sub is_qra
 {
-       return $_[0] =~ /^[A-Za-z][A-Za-z]\d\d[A-Za-z][A-Za-z]$/o;
+       return $_[0] =~ /^[A-Ra-r][A-Ra-r]\d\d[A-Xa-x][A-xa-x]$/;
 }
 
 # does it look like a valid lat/long