Perl: sustituir dígitos consecutivos con su recuento
Pregunta
Mis primeras preguntas aquí.
Tengo una cadena de dígitos como 55111233
como se puede ver figura 5 es consecutiva dos veces, tres veces 1 2 3 una vez y dos veces.
Quiero que se sustituirá en 52132132
en number1<count>number2<count>...numbern<count>
general
Por favor, me guía.
Solución
$digits = "55111233";
$digits =~ s/((\d)\2*)/$2 . length($1)/ge;
print $digits;
Otros consejos
Puede hacer:
$str =~s/(\d)(\1*)/$1.(length($2)+1)/eg;
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow