> -----Original Message-----
> From: Grant [mailto:emailgr...@gmail.com] 
> Sent: Tuesday, April 21, 2009 12:43
> To: Perl Beginners List
> Subject: Re: String manipulation question
> 
> >> >> Thanks guys.  With some help I've come up with this:
> >> >>
> >> >> $string = 'abc def ghi jkl mno pqr stu vwx yz';
> >> >> if(length($string) = 34) {$var1 = $string.":";}
> >> >
> >> > '=' is assignment, '==' is test for numerical equality.
> >> Change the above
> >> > line to:
> >> >    if( length($string) == 34 ) { $var1 = $string . ':' }
> >> >
> >> >> if(length($string) > 34) {
> >> >>   $string =~ s/\s//g;
> >> >
> >> > The above line deletes all of the spaces in $string. Is
> >> that what you want
> >> > to do?
> >>
> >> All fixed up except for this.  How can I remove only the 
> spaces at the
> >> end of $var1 and $var2 if they exist?
> >>
> >> - Grant
> >>
> >>
> >> >>   ($var1, $var2) = $string =~ /(.){35}(.){26}/;
> >> >
> >        This pulls 35 characters and splits words, yet what 
> you asked for was the last word separated. Correct?
> 
> I'm trying to pull 35 or fewer characters to the nearest space
> basically.  This is what I have now:
> 
> if(length($string) <= 34) {$var1 = $string.":";}
> if(length($string) > 34) {
>   ($var1, $var2) = ($string =~ /(.{35})(.{26})/);
                                         1234567891124567892123456789312345
        if you have in $string = q[1234 12345 12 5346 12367 123 123678123];
Then $var1 will be '1234 12345 12 5346 12367 123 12367', but I thought you 
wanted '1234 12345 12 5346 12367 123'?
Which one is the right one for what you are doing?
Wags ;)

>   $var1 =~ s/\s+$//;
>   $var2 =~ s/\s+$//;
>   $var2 .= ":";
> }
> 
> Does that look OK?  Is the 3rd line off?
> 
> - Grant
> 
> -- 
> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
> For additional commands, e-mail: beginners-h...@perl.org
> http://learn.perl.org/
> 
> 
> 

--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to