[AsteriskBrasil] Portabilidade, adicionar o 9 nos numeros de SP

Mike Tesliuk mike em tesliuk.com
Terça Julho 31 11:01:43 BRT 2012


tente desta forma

#!/usr/bin/perl
# Salve este arquivo e execute ele da seguinte forma
# perl <este_arquivo> <arquivo_de_BDD>

@ARGV;


open FILE, "$ARGV[0]";

while(<FILE>){
     chomp($_);
     my @nvalues = split(";", $_);
     my $number = $nvalues[2];
     #print $number . "\n";
     if($number =~ m/11[5-9][0-9]{7}/){
         $ddd = substr($number, 0, 2);
         $nnumber = substr($number, 2, 8);
         $ninedigit = $ddd . "9" . $nnumber;

         #print "NUMERO NOVO: $ninedigit\n";
     }else{
         $ninedigit = $number;
     }

     $asize = scalar @nvalues;
     #print "Tamanho: $asize\n";
     for ($i = 0; $i < @nvalues; $i++){
         if($i != 2){
             print @nvalues[$i] . ";";
         }else{
             print $ninedigit . ";";
         }
         if($i == ($asize -1)){
             print "\n";
         }
     }
}


close FILE;


Em 31-07-2012 10:49, Rodrigo Lang escreveu:
> Sim, assim irá funcionar...
>
>
> Só não utilize a que eu te passei, pois ela está errada, ela irá 
> substituir tudo que contém ";11" de 6 à 9 mais 7 dígitos por apenas 
> ";119". Erro meu, desculpa.
>
> Você só irá ter que fazer manualmente para ";119", ";118", etc..
>
>
> At,
> Rodrigo Lang.
>
> Em 31 de julho de 2012 10:46, monica em addphone.net 
> <mailto:monica em addphone.net> <monica em addphone.net 
> <mailto:monica em addphone.net>> escreveu:
>
>     eu estou fazendo com SED mesmo, estou retirando a 1º string e o
>     que esta depois da hora na modificaçao
>
>     assim toda linha que que contem ;119 posso trocar por ;1199 e ai
>     blz, pois nem outro campo do arquivo tem esta ocorrencia
>
>
>
>
>     On 7/31/2012 10:41 AM, Rodrigo Lang wrote:
>>     Monica, está utilizando o vi/vim para editar esse arquivo?
>>
>>     Se sim, de acordo com o padrão que você mostrou (
>>     ";<DDD><Número>;" )digite dois pontos e:
>>
>>     %s/;11[6-9]{7}/;119/g
>>
>>
>>     Sugiro que faça um backup do arquivo antes.
>>
>>
>>     At,
>>     Rodrigo Lang.
>>
>>
>>     Em 31 de julho de 2012 10:19, monica em addphone.net
>>     <mailto:monica em addphone.net> <monica em addphone.net
>>     <mailto:monica em addphone.net>> escreveu:
>>
>>         Bom dia, bom, como todos já sabem ontem entrou em vigor a
>>         alteração dos celulares de SP
>>         Preciso alterar minha base de dados para adicionar o 9
>>
>>         meu arquivo de números esta assim
>>
>>         6917078;21652957;1188484474;55341;0341;498;07/07/2012
>>         21:00:59;lspp;new;Basic;;07/07/2012 21:00:58;INSERT;
>>         6917082;21652955;1168798090;55341;0341;498;07/07/2012
>>         21:00:59;lspp;new;Basic;;07/07/2012 21:00:58;INSERT;
>>         6917083;21652962;1198848449;55341;0341;498;07/07/2012
>>         21:01:00;lspp;new;Basic;;07/07/2012 21:00:59;INSERT;
>>         6917085;21652964;1178484502;55341;0341;498;07/07/2012
>>         21:01:00;lspp;new;Basic;;07/07/2012 21:00:59;INSERT;
>>
>>
>>         estou tentando usando expressão regular e SED.
>>
>>         A expressão regular para encontrar só os números de SP já
>>         criei, agora falta como colocar este maldito 9 na frente.
>>
>>         Obrigada
>>
>>         _______________________________________________
>>         KHOMP Inovação: External Board Series
>>         Módulos de 1/2 rack e 1U para todas as interfaces e soluções
>>         Asterisk e FreeSWITCH.
>>         Tenha a External Series Experience na sua aplicação. Visite
>>         www.khomp.com <http://www.khomp.com>
>>         _______________________________________________
>>         DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>>         20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>>         Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>>         www.digivoice.com.br <http://www.digivoice.com.br>
>>         ________
>>         YEALINK: Telefones IP e VídeoPhones IP com o melhor
>>         custo/benefício do mercado.
>>         email: yealink em commlogik.com.br
>>         <mailto:yealink em commlogik.com.br> | www.commlogik.com.br
>>         <http://www.commlogik.com.br> | (11) 5503-1011
>>         ______________________________________________
>>         Para remover seu email desta lista, basta enviar um email em
>>         branco para
>>         asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>>         <mailto:asteriskbrasil-unsubscribe em listas.asteriskbrasil.org>
>>
>>
>>
>>
>>     -- 
>>     Rodrigo Lang
>>
>
>
>     _______________________________________________
>     KHOMP Inovação: External Board Series
>     Módulos de 1/2 rack e 1U para todas as interfaces e soluções
>     Asterisk e FreeSWITCH.
>     Tenha a External Series Experience na sua aplicação. Visite
>     www.khomp.com <http://www.khomp.com>
>     _______________________________________________
>     DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
>     20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
>     Centro Treinamento - Curso de PABX IP -  Asterisk  - Site
>     www.digivoice.com.br <http://www.digivoice.com.br>
>     ________
>     YEALINK: Telefones IP e VídeoPhones IP com o melhor
>     custo/benefício do mercado.
>     email: yealink em commlogik.com.br <mailto:yealink em commlogik.com.br>
>     | www.commlogik.com.br <http://www.commlogik.com.br> | (11) 5503-1011
>     ______________________________________________
>     Para remover seu email desta lista, basta enviar um email em
>     branco para asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>     <mailto:asteriskbrasil-unsubscribe em listas.asteriskbrasil.org>
>
>
>
>
> -- 
> Rodrigo Lang
>
>
>
> _______________________________________________
> KHOMP Inovação: External Board Series
> Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH.
> Tenha a External Series Experience na sua aplicação. Visite www.khomp.com
> _______________________________________________
> DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
> 20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
> Centro Treinamento - Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br
> ________
> YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado.
> email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
> ______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscribe em listas.asteriskbrasil.org

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20120731/94a253ef/attachment-0001.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil