2009-02-01 24 views
13

This question pidiendo un formato de número de teléfono API en Java me hizo preguntarme por qué tal API no parece existir. Dado el número de clases validation disponibles bajo Apache Commons, habría pensado que se incluiría una API.Formato de número de teléfono y biblioteca de validación

Mi pregunta es, ¿alguien sabe de una biblioteca de formato/validación de números de teléfono disponible en cualquier idioma que podría utilizarse como modelo para un pequeño proyecto de código abierto de Java? Además, aparte de la gran cantidad de formatos de números de teléfono diferentes que se utilizan en todo el mundo, ¿alguien sabe por algún motivo que tal proyecto sería inviable?

Respuesta

0

Como se dijo en las respuestas a la otra pregunta, nadie ha visto ninguna para Java, y como dijo, sería casi imposible debido a la diferencia de formatos de números de teléfono en todo el mundo.

Y si conoce los diferentes formatos para las regiones a las que se dirige, generalmente es bastante fácil implementarlo en expresiones regulares.

3

En http://www.geonames.org/ tienen una base de datos que puede descargar, hay reglas de regs para los números de teléfono incluidos en el conjunto de datos del país.

http://download.geonames.org/export/dump/

Busque el archivo 'countryInfo.txt'.

Le sugiero que cree su propio validador basado en eso.

+2

Wooops ... Lo siento, el RegEx es para códigos postales. Contiene el prefijo del teléfono del país, es decir. +45 para Dinamarca – Phliplip

23

Google lanzó recientemente libphonenumber para analizar, formatear, almacenar y validar números de teléfono internacionales.

-1

Campo de entrada Teléfono:

<input class="left" id="field" name="field" /> 

script jQuery:

jQuery.validator.addMethod ("n∫mero de", la función (phone_number, elemento) { phone_number = phone_number.replace (/ \ s +/g, ""); return this.optional (elemento) || phone_number.length> 9 & & phone_number.match (/^(1 -?)? (([2-9] \ d { 2}) | [2-9] \ d {2}) -? [2-9] \ d {2} -? \ D {4} $ /); }, "Especifique un número de teléfono válido");

0

Se puede extraer de Parsify Formato aquí - https://www.mashape.com/parsify/format#endpoint-Phone-Number

le proporcione su número en varios formatos por ejemplo,

{ "e164": "1234567890", "nacional": "234567890", "internacional": "1 234 567 890", "válida": "tipo" falso : "Desconocido" }

Usted puede obtener una respuesta más extensa si se trata de un número real

+0

¡Gracias por publicar su respuesta! Asegúrese de leer detenidamente [Preguntas frecuentes sobre autopromoción] (http://stackoverflow.com/faq#promotion). También tenga en cuenta que * se requiere * que publique un descargo de responsabilidad cada vez que se vincula a su propio sitio/producto. –

Cuestiones relacionadas