#!/usr/bin/perl # Demonstrate different loops for use with string substitutions use strict; use warnings; # use diagnostics; my $RevStr = "\tabc\tkis17.1.33en_12345.exe\n"; $NewRev = $RevStr; s/.*kis17/17/, s/.exe//, s/en_/./, s/\\n"; $NewRev = $RevStr; $NewRev = $RevStr =~ s/.*kis17/17/r =~ s/.exe.*//r =~ s/en_/./r; print "run on line: \$NewRev = <$NewRev>\n"; #modified $NewRev = $RevStr; for ($NewRev) {s/.*kis17/17/; s/.exe.*//; s/en_/./; s/\\n"; $NewRev = $RevStr; for ($NewRev) #white spaces consumes no Mips! why so compact? { s/.*kis17/17/; #all 3 statements modify $NewRev s/.exe.*//; s/en_/./; } print "for at the start: \$NewRev = <$NewRev>\n\n"; __END__