Estou tendo um sério problema aqui. Estou buscando uma forma de formatar números de telefone que recebem DDI e DDD ao mesmo tempo.
A forma que recebo os telefones é a seguinte:
00 + DDI + DDD + Telefone (Exemplo: 0059829162202)
Sendo que:
DDI pode ter de 1 a 3 digitos
DDD pode ter de 1 a 3 digitos
e o telefone seria o restante (sem necessidade de ser formatado - pois existem telefones de 6 a 9 dígitos).
Na minha base de dados consta o país de onde vêm o número. Ou seja, posso criar uma base de dados contendo TODOS os DDI de todas as regiões do planeta para saber seu tamanho. Porém não sei como faria isso para o DDD.
Gostaria de saber, se alguém sabe alguma maneira de formatar isso!
ou você recebe um dado adicional (tamanho do DDD ou tamanho do telefone), ou você faz isso aleatoriamente u.u
não tem como saber se em 00-00-[telefone removido], você tem 2 pro DDD e 8 pro telefone, 1 pro DDD e 9 pro telefone, ou 3 pro DDD e 7 pro telefone
nooorton
O tamanho do DDI eu até consegui encontrar na minha base… Mais o tamanho de DDD para cada pais é tenso! São 300 países, imagina o tanto de área que cada país tem… Por isso fica meio complicado ;/
nooorton
Bom, tive um progresso…
No exemplo que enviei acima (0059829162202)
Já consigo formatar da seguinte maneira:
(+[telefone removido], como 00 é identificador de chamadas internacionais, posso remove-lo.
Tenho uma base de dados que contem o PAIS de destino e seu respectivo DDI (assim posso contar quantos dígitos tem o DDI do dado pais).
Porém ainda não consegui uma forma de saber quantos dígitos tem o DDD do pais (lembrando que existem ddds de 1 a 4 digitos).
Também não posso fazer o caminho inverso (contanto dígitos do número do telefone), pois esses também são variáveis de 6 a 9 dígitos.
Alguém tem alguma sugestão ?
nooorton
É acho que o jeito vai ser não formatar mesmo. To achando complicado d+ separar o DDD do telefone
WellingtonRamos
nooorton:
Bom, tive um progresso…
No exemplo que enviei acima (0059829162202)
Já consigo formatar da seguinte maneira:
(+[telefone removido], como 00 é identificador de chamadas internacionais, posso remove-lo.
Tenho uma base de dados que contem o PAIS de destino e seu respectivo DDI (assim posso contar quantos dígitos tem o DDI do dado pais).
Porém ainda não consegui uma forma de saber quantos dígitos tem o DDD do pais (lembrando que existem ddds de 1 a 4 digitos).
Também não posso fazer o caminho inverso (contanto dígitos do número do telefone), pois esses também são variáveis de 6 a 9 dígitos.
Alguém tem alguma sugestão ?
Para este caso, é mais simples não formatar. Exemplo: Fone São Paulo - Brasil +551177272745 (número fictício representando SPBRASIL).