use strict;
use warnings;
my %replace = qw(
COM SEC
MOC COM
SEC COM
CO MOC
);
my $searchpat = join '|', sort { length $b <=> length $a } keys %replace;
$searchpat = qr/$searchpat/; # optional, dunno if it speeds up things
my $example = "FOO CO COM BAR MOC SEC";
$example =~ s/($searchpat)/$replace{$1}/g;
print "$example\n";
####
FOO MOC SEC BAR COM COM
##
##
my $example = "MOC.COMPUTER.COM.FOO / SEC.SECT / CO";
$example =~ s/\b($searchpat)\b/$replace{$1}/g;
print "$example\n";
##
##
COM.COMPUTER.SEC.FOO / COM.SECT / MOC