projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added spanish help file, altered help to include new langyages
[spider.git]
/
perl
/
DXUtil.pm
diff --git
a/perl/DXUtil.pm
b/perl/DXUtil.pm
index 9d475ed89c8f2f17713b3aabdc9aa6c79d93d4df..6cf35b2bd77e3a398d652ba7d3f2af98f8e77228 100644
(file)
--- a/
perl/DXUtil.pm
+++ b/
perl/DXUtil.pm
@@
-10,6
+10,7
@@
package DXUtil;
use Date::Parse;
use IO::File;
use Date::Parse;
use IO::File;
+use File::Copy;
use Data::Dumper;
use strict;
use Data::Dumper;
use strict;
@@
-26,6
+27,7
@@
require Exporter;
@ISA = qw(Exporter);
@EXPORT = qw(atime ztime cldate cldatetime slat slong yesno promptf
parray parraypairs phex shellregex readfilestr writefilestr
@ISA = qw(Exporter);
@EXPORT = qw(atime ztime cldate cldatetime slat slong yesno promptf
parray parraypairs phex shellregex readfilestr writefilestr
+ filecopy
print_all_fields cltounix unpad is_callsign is_latlong
is_qra is_freq is_digits is_pctext is_pcflag insertitem deleteitem
);
print_all_fields cltounix unpad is_callsign is_latlong
is_qra is_freq is_digits is_pctext is_pcflag insertitem deleteitem
);
@@
-163,7
+165,7
@@
sub phex
sub parray
{
my $ref = shift;
sub parray
{
my $ref = shift;
- return
join(', ', @{$ref})
;
+ return
ref $ref ? join(', ', @{$ref}) : $ref
;
}
# take the arg as an array reference and print as a list of pairs
}
# take the arg as an array reference and print as a list of pairs
@@
-321,6
+323,11
@@
sub writefilestr
}
}
}
}
+sub filecopy
+{
+ copy(@_) or return $!;
+}
+
# remove leading and trailing spaces from an input string
sub unpad
{
# remove leading and trailing spaces from an input string
sub unpad
{
@@
-333,13
+340,14
@@
sub unpad
# check that a field only has callsign characters in it
sub is_callsign
{
# check that a field only has callsign characters in it
sub is_callsign
{
- return $_[0] =~ /^(?:[A-Z]{1,2}\d+|\d[A-Z]\d+)[A-Z]
+(?:-\d{1,2}|\/[A-Z0-9]+
)?$/;
+ return $_[0] =~ /^(?:[A-Z]{1,2}\d+|\d[A-Z]\d+)[A-Z]
{1,3}(?:-\d{1,2}|\/(?:[A-Z]{1,2}\d{0,2}|\d[A-Z]\d{0,2})
)?$/;
}
# check that a PC protocol field is valid text
sub is_pctext
{
}
# check that a PC protocol field is valid text
sub is_pctext
{
- return $_[0] =~ /^[\x09\x20-\xFF]+$/;
+ return undef if $_[0] =~ /[\x00-\x08\x0a-\x1f\xf0-\xff]/;
+ return $_[0];
}
# check that a PC prot flag is fairly valid (doesn't check the difference between 1/0 and */-)
}
# check that a PC prot flag is fairly valid (doesn't check the difference between 1/0 and */-)