#!/usr/bin/perl -w use strict; my @data = ('# Version: 1.11', '* Version: 1.11', 'Version: 1.11', '/* Version: 1.11'); foreach my $row (@data) { if( $row =~ m/^([\#\*] | \/\* )? \s*version:?\s+ (\d+\.\d+|)/ix) { print "$row \t $2 \n"; } }