#!/usr/bin/perl -lw use strict; my $metar = 'METAR CCCC 210855Z AUTO dddff(f)Gfmfm(fm)KTv dndndnVdxdxdx VVVVVSM [RDRDR/VRVRVRVRFT ] w\'w\' [NsNsNshshshs or VVhshshs T\'T\'/T\'dT\'d APHPHPHPH'; if ( $metar =~ /^(METAR|SPECI)\s([A-Z]{4})\s(\d\d)(\d{4}Z)\s(AUTO|COR).*/) { my $type= $1; my $stn= $2; my $monthday = $3; my $obsTime= $4; my $subtype= $5; print $type . " Station: $stn, Date: $monthday, ObservationTime: $obsTime, Subtype: $subtype"; } else { print "ww screwed up the regex."; }