say "\tDone with source and sink files\n"; $/ = "\n"; # restore record separator my @choroba = ('choroba my car -- a $car -- is $car_colour. Choroba-', 'choroba my car2 is $car_colour $car. Choroba-', 'choroba my car3 is $car_colour $car Choroba-', 'choroba my car4 is $car_colour and |secondinstance: $car_colour| |firstinstance:$car| Choroba-', ); for (@choroba) { if ( $_ =~ /choroba/ .. /Choroba-/ ) { s/choroba/ /; # ... s/Choroba-/ /; # or set record separator s/\$car_colour/red/g; # yup, need the g s/\$car[^_]{1}/ford/; say $_; } }