⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 n8ur.pm

📁 The Linux GPIB Package is a support package for GPIB (IEEE 488) hardware. The package contains kerne
💻 PM
字号:
package n8ur;# John R. Ackermann N8UR   (jra@febo.com)# Mon Jun  9 09:19:03 2003## n8ur - my useful functions## Copyright 2003 by John R. Ackermann  N8UR (jra@febo.com)# Licensed under the GPL version 2 or later; see the file COPYING# included with this distribution.  I request, but do not require, that# any modifications that correct bugs or errors, or increase the program's# functionality, be sent via email to the author at the address above.use strict;use warnings;use diagnostics;use Exporter;use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);$VERSION     = '0.01';@ISA         = qw(Exporter);@EXPORT      = ();@EXPORT_OK   = qw(trim collapse squash lower_case upper_case		 round parse_value is_number);sub trim {    local $_ = shift;    s/\n/ /sg;		# convert newlines to spaces    s/\r/ /sg;		# convert carriage returns to spaces    s/\000/ /sg;	# convert nulls to spaces    s/^\s+//sg;		# trim leading spaces    s/\s+$//sg;		# trim trailing spaces    return $_;}sub collapse {    local $_ = shift;    s/\s+/ /sg;		# collapse multiple spaces to just one    return $_;}sub squash {    local $_ = shift;    s/\s//sg;		# remove all spaces    return $_;}sub lower_case {    local $_ = shift;    $_ =~ tr [A-Z] [a-z];    return $_;}sub upper_case {    local $_ = shift;    $_ =~ tr [a-z] [A-Z];    return $_;}sub round {	my($places) = shift;        my($number) = shift;	my($rounded);	if ($number < 0) {		$rounded = int(($number*10**$places) -.5			* ($number <=> 0) )/10**$places;	}	else {		$rounded = int(($number*10**$places) +.5			* ($number <=> 0) )/10**$places;	}	return $rounded        };sub parse_value {	# splits input into alpha prefix, numeric value, and alpha suffix	# first split is when a digit, or "+", "-", or "." is encountered	# second split is at first alpha after the number	my($val) = shift;	my $prefix = "";	my $value = "";	my $suffix = "";	my $j = 0;	my $end = 0;	# get rid of any embedded spaces	$val = squash($val);	until ( (substr($val,$j,1) =~ /[\d+-\.]/) || ($j == length($val)) ) {		$prefix .= substr($val,$j,1);		$j++;		$end = $j;		}	if ($end > 1) {		$val = substr($val,$end);		}	$j = 0;	$end = 0;	until ( (substr($val,$j,1) =~ /[a-z]/i) || ($j == length($val)) ) {		$j++;		$end = $j;		}	$value = substr($val,0,$end);	$suffix = substr($val,$end);	return $prefix,$value,$suffix;}sub is_number {	# returns true if input is a decimal number    	local $_ = shift;	if ( /^[+-]?(?:\d+(?:\.\d*)?|\.\d+)$/ ) {		return 1;		}	else {		return 0;		}}1;=pod=head1 NAMEhp3585b - Functions for HP 3585B Spectrum Analyzer=head1 SYNOPSIS	$string = trim($input)	$string = collapse($input)	$string = squash($input)	$string = lower_case($input)	$string = upper_case($input)	$num = round($num_places,$input)	($prefix,$value,$suffix) = parse_value($string)	$boolean = is_number($input)=head1 ABSTRACT=head1 DESCRIPTION=head1 FUNCTIONS =back=cut=head1 SEE ALSO=head1 LICENSE Copyright 2003 by John R. Ackermann  N8UR (jra@febo.com) This program may be copied, modified, distributed and used for  any legal purpose provided that (a) the copyright notice above as well as these terms are retained on all copies; (b) any modifications that  correct bugs or errors, or increase the program's functionality, are  sent via email to the author at the address above; and (c) such  modifications are made subject to these license terms.=head1 AUTHORJohn Ackermann   N8UR (jra@febo.comCopyright (C) 2003All rights Reserved=cut

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -