¿Cómo puedo expandir una cadena como "1..15,16" en una lista de números?

Tengo una aplicación Perl que toma de la línea de comandos una entrada como:

<code>application --fields 1-6,8
</code>

Debo mostrar los campos según lo solicitado por el usuario en la línea de comandos.

Pensé en sustituir '-' con '..' para poder almacenarlos en una matriz, por ejemplo.

<code>$str = "1..15,16" ;
@arr2 = ( $str ) ;
@arr = ( 1..15,16 ) ;
print "@arr\n" ;
print "@arr2\n" ;
</code>

El problema aquí es que @arr funciona bien (como debería) pero en @ arr2 la cadena completa no se expande como elementos de matriz.

He intentado usar secuencias de escape pero no tengo suerte.

¿Se puede hacer de esta manera?

Respuestas a la pregunta(6)

Su respuesta a la pregunta