Если вы действительно хотите, вы можете создать свой собственный, но я бы не стал, потому что у вас гораздо больше функциональности с s///
... вы можете встроить эту функциональность в свою функцию, но зачем воссоздавать то, что уже существует?
#!/usr/bin/perl -w
use strict;
main();
sub main{
my $foo = "blahblahblah";
print '$foo: ' , replace("lah","ar",$foo) , "\n"; #$foo: barbarbar
}
sub replace {
my ($from,$to,$string) = @_;
$string =~s/$from/$to/ig; #case-insensitive/global (all occurrences)
return $string;
}