I declared a variable $myString with the value '3 ' (notice the white space). Is there any function to remove the white space for the return value? A little like SomeFun($myString) then return '3' (without white space).

#!C:\Perl\bin\perl.exe
use strict;
use warnings;
use Data::Dumper; 
 
my $fh = \*DATA; 
 
print Dumper parse_constant_spec( $fh );      
 
# Parse a constant spec file. 
# Pass in a handle to process. 
# As long as it acts like a file handle, it will work. 
sub parse_constant_spec { 
    my $fh = shift; 
 
    my %spec; 
 
    # Until file is done: 
        # Read in a whole block 
    while( my $block = read_block($fh) ) { 
 
        # Parse the and return key/value pairs for a hash. 
        my %constant = parse_block( $block ); 
 
        # Store a ref to the hash in a big hash of all blocks, keyed by constant_name. 
        $spec{ $constant{const_name} } = \%constant; 
 
    } 
 
    # Return ref to big hash with all block data 
    return \%spec; 
} 
 
# Read a constant definition block from a file handle. 
# void return when there is no data left in the file. 
# Otherwise return an array ref containing lines to in the block.  
sub read_block { 
    my $fh = shift; 
 
    my @lines; 
    my $block_started = 0; 
 
    while( my $line = <$fh> ) { 
 
        $block_started++ if $line =~ /^constant/; 
 
        if( $block_started ) { 
 
            last if $line =~ /^\s*$/; 
 
            push @lines, $line; 
        } 
    } 
 
    return \@lines if @lines; 
 
    return; 
}      
 
sub parse_block { 
    my $block = shift; 
    my ($start_line, @attribs) = @$block; 
 
    my %constant; 
 
    # Break down first line: 
    # First separate assignment from option list. 
    my ($start_head, $start_tail) = split /=/, $start_line; 
 
    # work on option list 
    my @options = split /\s+/, $start_head; 
 
    # Recover constant_name from options: 
    $constant{const_name} =
Edit
Report