[Cascavel-pm] Substituindo números com zero a esquerda.

Hamilton Vera hamilton.listas em gmail.com
Terça Janeiro 15 10:09:24 PST 2008


Boa tarde mestres,

Estou trabalhando em um arquivo imenso para importa-lo de maneira
correta em um sistema. Consegui tratar quase todos os
campos perfeitamente, exceto;

Grupo: A T I V O                                 Levantado em
20/07/2007                        Folha  00001
....dados....
Grupo: P A S S I V O                          Levantado em 20/07/2007
                      Folha  00002
....dados....
Grupo: P A S S I V O                          Levantado em 20/07/2007
                      Folha  00004
....dados....
Grupo: P A S S I V O                          Levantado em 20/07/2007
                      Folha  00005
...dados....

Meu obstáculo é converter o "Folha  0000x" em um valor "incremental
que deveria começar em "Folha  00002"  (mantendo os zeros a esquerda).
Tentei algo tolo como;

$line =~ s/Folha  \d+/Folha  $count/;

Só que não consigo manter os zeros a esquerda.

Pensei em fazer um split e depois imprimir a parte numérica em separado,

printf '%05s', $count;

deu certo, mas gostaria de saber  uma forma mais galante para fazer isso.


Muito obrigado.


-- 
Hamilton Vera
int Administrator (char Network[],char ComputationalSystems[]);
"Google is my shepherd, no want shall I know"


Mais detalhes sobre a lista de discussão Cascavel-pm