#!/usr/bin/perl use strict; use warnings; use Win32::OLE; my $v=Win32::OLE->new('SAPI.SpVoice'); while (<>) { # space out numbers so they'll # be spoken individually my $single = s/(\d)/$1 /g; $v->Speak($_); }