in reply to match if last char and first char are different excluding certain chars

I can't make heads or tails of your descriptions and examples. If groups of digits are supposed to be surrounded with underscores (taking in account that N is a digit as well), then why does $correct end in R_345U_299M? I would expect it to end in R_345_U_299_M. Also, the group 69827 doesn't get underscores.

I can make a substitution that matches your descriptions, but that produces quite a different string of $string than $correct is.

my $L = '[A-MO-Za-mo-z]'; my $D = '[0-9N]'; $_ = '423RY75Y69827EC67592C78657N965R345U299M'; s/($L?)($D+)\1/_${1}${2}${1}_/g; print $_, "\n"; __END__ _423_R_Y75Y__69827_E_C67592C__78657N965_R_345_U_299_M
  • Comment on Re: match if last char and first char are different excluding certain chars
  • Download Code