my $find = quotemeta 'bla.bla.bla'; while() { if ( m/($find\s*=\s*)(.+)/s ) { my $begin = $1; my $change = $2; $change =~ s/ /\\ /g; print $begin.$change; } else { print; } } __DATA__ # don't change me bla.bla.bla = c:/Some Windows/Path With/Spaces In/It # don't change me # don't change me # don't change me #### # don't change me bla.bla.bla = c:/Some\ Windows/Path\ With/Spaces\ In/It # don't change me # don't change me # don't change me