van egyszerubb, az egyik a te magoldasod modositva: perl -ple 's/((\[)|(,))([0-9]+)/$2.chr($4)/ge' < string masik ahol csak $1 van: perl -ple 's/(?:(?<=\[)|(?>,))([0-9]+)/chr($1)/ge'