Função Perl split - use caracteres repetidos como delimitador
Quero dividir uma string usando letras repetidas como delimitador, por exemplo,"123aaaa23a3"
deve ser dividido como('123', '23a3')
enquanto"123abc4"
deve permanecer inalterado.
Então eu tentei isso:
@s = split /([[:alpha:]])\1+/, '123aaaa23a3';
Mas isso retorna'123', 'a', '23a3'
, que não é o que eu queria. Agora eu sei que isso é porque o último'a'
no'aaaa'
é capturado pelas parênteses e, assim, preservado porsplit()
. De qualquer forma, não posso adicionar algo como?:
Desde a[[:alpha:]]
deve ser capturado para referência anterior. Como posso resolver esta situação?