#!/usr/bin/perl use warnings; use strict; my %nums; @nums{qw(today yesterday this last)} = undef; my $alts = join('|',keys %nums); while () { /($alts)(\d+)\1/; $nums{$1} = $2; } for my $key (keys %nums) { my $ans = ($nums{$key} * 0.4)/100; print "$key: $ans (from $nums{$key})\n" } __DATA__ Today: today408today Clicks: 34 Yesterday: yesterday555yesterday Clicks: 61 This Month: this11360this Clicks: 812 Last Month: last5350last Clicks: 454