#! perl open (XAPFILE, 'C:\Documents and Settings\Nick\Desktop\040408 Work Files\stranger.xap') or die; my $file = join ("",); my ($Cue, $Sound, $Pri); my $r_file = \$file; open (PRIFILE, 'C:\stranger.xap') or die; while (){ { ($Cue, $Sound, $Pri) = split ("\t"); chomp ($Pri); if ($$r_file =~ s/(Sound\s*\{\s* Name\ =\ $Sound;\s* Priority\ =\ )([\d\D]*?);/$1$Pri;/xm){ print "Update $Sound > $Pri \n"; #print "'$1$Pri;'\n"; }elsif ($$r_file =~ s/(Sound\s*\{(\s*) Name\ =\ $Sound;\s*$)/$1$2Priority\ =\ $Pri;\n/xm){ #print "$1$2Priority = $Pri;\n"; #print "1'$1'\n2'$2'\n3'$3'\n4'$4'\n"; print "Add $Sound > $Pri \n"; }else{ print "ERROR $Cue > $Sound > $Pri \n"; } } } print OUTFILE $file;