in reply to Re^3: Find Replace text with list
in thread Find Replace text with list

Ok sorry for an unclear question here my problems I have 3 files : source.txt, target.txt and data. Data file contain 2 column separate by :, example for code below is /hang:code1 /hung:code2 /hong:code3 then source.txt is file text that I want to process it, I need to read all lines and compare to the data file, the source.txt is guarantee have code such as \hang \hung \hing etc (left side code from data file) then those code are replace by code1, code2 etc and write to target file ( target.txt)
#!/usr/bin/perl use strict; use warnings; my $filename = 'data'; my $sfilename = 'source.txt'; my $tfilename = 'target.txt'; open(DFILE, $filename) or die "Could not read from $filename, program +halting."; open(SFILE, $sfilename) or die "Could not read from $filename, program + halting."; open(TFILE, "> $tfilename") || die("Cannot Open File"); while(my $SBR=<DFILE>) { my @fields = split(':', $SBR); my $rRegex = qr/$fields[0]/; my $Regexr = qr/$fields[1]/; for my $s (qw(/hang /hung /hing /heng)) { #here I need read it + as a source file, compare to data file if ($s =~ $rRegex){ print TFILE "$fields[1] "; # then write it to target file } } } close DFILE; close SFILE; close TFILE;