sisyphus wrote:
> On Jun 29, 1:18 am, [EMAIL PROTECTED] (Luca Villa) wrote:
>> I have a long text file like this:
>>
>> 324yellow
>> 34house
>> black
>> 54532
>> 15m21red56
>> 44dfdsf8sfd23
>>
>> How can I obtain (Perl - Windows/commandline/singleline) the
>> following?
>>
>> 1) only the numbers at the beginning before some alpha text, like
>> this:
>>
>> 324
>> 34
>> 15
>> 44
>>
> 
> Just for fun - ie ignoring prettiness and requirements 2) and 3):
> 
> my @stuff = qw(324yellow 34house black 54532 15m21red56
> 44dfdsf8sfd23);
> for(@stuff) {
>    $x = $_ * 1;
>    if($x == 0 && substr($_, 0, 1) ne "0") {$x = undef}
>    if($x eq $_) {$x = undef}
>    print $x, "\n" if defined $x;
> }


Or, rather

for (@stuff) {
  no warnings 'numeric';
  my $x = $_+0;
  print "$x\n" unless $x eq $_ or $x == 0 and /^[^0]/;
}

Rob

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to