$ perl -le ' > $str = q{adfsdheHjdGafefaffJaff}; > $str =~ s{(?<=^|[A-Z])a}{999}g; > print $str;' Variable length lookbehind not implemented in regex; marked by <-- HERE in m/(?<=^|[A-Z])a <-- HERE / at -e line 3. $ #### $ perl -le ' > $str = q{adfsdheHjdGafefaffJaff}; > $str =~ s{(?:(?<=^)|(?<=[A-Z]))a}{999}g; > print $str;' 999dfsdheHjdG999fefaffJ999ff $