All pastes #728531 Raw Edit

Stuff

public text v1 · immutable
·published 2007-10-07 02:14 UTC
rendered paste body
#!/usr/bin/env perl

use strict;
use warnings;

my ($in,@array,$i,@foo,@bar,$lat,$lon);
$in=0;

while (<>) {
	if (/^OBS ASH CLOUD/ .. /^\n/) {
		parse();
		push(@foo, @array);
  	}
	if (/^FCST ASH CLOUD \+6H/ .. /^\n/) {
		parse();
		push(@bar, @array);
  	}
}
obs();
fcst();

sub fcst{
	shift (@bar); shift (@bar); shift (@bar); shift (@bar); shift (@bar); shift (@bar);
	for ($i = 0; $i <= $#bar; $i=$i+2) {
		$lat=$bar[$i]/100;
		$lon=$bar[$i+1]/100;
		print "fcstlat=$lat "; print "fcstlon=$lon\n";
	}
}

sub obs{
	shift (@foo); shift (@foo); shift (@foo); shift (@foo);
	pop (@foo); pop (@foo);	pop (@foo); pop (@foo);
	for ($i = 0; $i <= $#foo; $i=$i+2) {
		$lat=$foo[$i]/100;
		$lon=$foo[$i+1]/100;
		print "obslat=$lat "; print "obslon=$lon\n";
	}
}

sub parse{
	chomp;
	$_=~ s/-//g;
	$_=~ s/N//g;
	$_=~ s/S/-/g;
	$_=~ s/E//g;
	$_=~ s/W/-/g;
	@array=split(/\s+/);
}