york unidos ps4 postal nueva florida estados eeuu código cual codigo california javascript validation

javascript - ps4 - cual es el codigo postal de estados unidos



Validación de Código Postal(Código Postal de EE. UU.) (13)

Pensé que la gente estaría trabajando en pequeños proyectos de código juntos, pero no los veo, así que aquí hay uno fácil:

Código que valida un código postal válido de los EE. UU. Sé que hay bases de datos de códigos postales, pero todavía hay usos, como páginas web, validación rápida, y también el hecho de que los códigos postales se siguen emitiendo, por lo que es posible que desee utilizar la validación débil.

Escribí un poco sobre códigos postales en un proyecto paralelo en mi wiki / blog:

https://benc.fogbugz.com/default.asp?W24

También hay un tipo nuevo y extraño de código postal.

https://benc.fogbugz.com/default.asp?W42

Puedo hacer el código de JavaScript, pero sería interesante ver cuántos idiomas podemos obtener aquí.


¿Te refieres a la validación de dirección? Al igual que la respuesta anterior de Mike, necesita atender el otro 95%.

Lo que puede hacer es cuando el usuario seleccione su país y luego habilite la validación. La validación de dirección y la validación de código postal son 2 cosas diferentes. Validar el ZIP es solo asegurarse de que sea un número entero. La validación de dirección valida la dirección real para precisión, preferiblemente para envío por correo.


Aquí hay una función de JavaScript que valida un código postal basado en un código de país. Permite un formato algo liberal. Puede agregar casos para otros países también. Tenga en cuenta que el caso predeterminado permite códigos postales vacíos, ya que no todos los países los usan.

function isValidPostalCode(postalCode, countryCode) { switch (countryCode) { case "US": postalCodeRegex = /^([0-9]{5})(?:[-/s]*([0-9]{4}))?$/; break; case "CA": postalCodeRegex = /^([A-Z][0-9][A-Z])/s*([0-9][A-Z][0-9])$/; break; default: postalCodeRegex = /^(?:[A-Z0-9]+([- ]?[A-Z0-9]+)*)?$/; } return postalCodeRegex.test(postalCode); }

FYI El segundo enlace que hace referencia a los códigos postales de vanidad parece haber sido una broma de April Fool''s.


Aquí hay uno del archivo additional-methods.js del complemento jQuery Validate ...

jQuery.validator.addMethod("zipUS", function(value, element) { return /(^/d{5}$)|(^/d{5}-/d{4}$)/.test(value); }, "Please specify a valid US zip code.");

EDIT : dado que el código anterior es parte del complemento jQuery Validate, depende del método .addMethod() .

Elimina la dependencia de los complementos y haz que sea más genérico ...

function checkZip(value) { return (/(^/d{5}$)|(^/d{5}-/d{4}$)/).test(value); };

Ejemplo de uso: http://jsfiddle.net/5PNcJ/



Esta es una buena solución de JavaScript para el problema de validación que tiene:

//b/d{5}-/d{4}/b/


Mientras trabajo en la industria del correo durante 17 años, he visto toda clase de entradas de datos en esta área. Me parece interesante saber cuántas personas no conocen su dirección, tal como lo define USPS. Aún veo direcciones como esta:

XYZ College
Departamento de TI
Ciudad, St ZIP

La peor parte es el correo electrónico que se entrega el 99% del tiempo, el otro 1%, que se devuelve para una dirección incompleta como debería.

En una publicación anterior, alguien mencionó USPS CASS, que el software no es gratuito.

Regex un probador de código postal es bueno, estoy usando expresiones para determinar si el código postal de EE. UU., CA, Reino Unido o AU. He visto expresiones para Japón y otros que solo agregan desafíos al elegir el país correcto al que pertenece el archivo zip.

Con mucho, la mejor respuesta es usar listas desplegables para estado y país. Luego use tablas para validar aún más si es necesario. Para hacerte una idea, hay 84052 combinaciones aceptables de US City St Zip solo en los primeros 5 dígitos. Hay 249 países válidos según la ISO y hay 65 estados / territorios de EE. UU.

También hay clases militares, solo en el apartado postal y en el código postal único. KISS aplica aquí.


Para ampliar mi respuesta, UPS y FedEx no pueden entregar a un PO BOX sin utilizar el USPS como controlador final. La mayoría del software de envío no permite un zip de apartado postal para sus servicios estándar. Ejemplos de cremalleras de PO Box son 00604 - RAMEY, PR y 06141 - HARTFORD, CT.

La necesidad de validar códigos postales en realidad puede ser una cuestión de qué tan lejos llegar, cuál es el presupuesto, cuál es la línea de tiempo.

Como cualquier cosa con expresiones prueba, prueba, prueba y prueba de nuevo. Tenía una expresión para la validación del estado y encontré que YORK pasó cuando debería fallar. Una vez en miles, alguien ingresó a Nueva York, Nueva York, 10279, ugh.

También tenga en cuenta que a USPS no le gusta la puntuación como N. Market St. y también tiene abreviaturas aceptables muy específicas para cosas como Lane, Place, North, Corporation y similares.


Para permitir que un usuario ingrese un código postal canadiense con letras minúsculas también, la expresión regular tendría que verse así:

/ ^ ([a-zA-Z] [0-9] [a-zA-Z]) / s * ([0-9] [a-zA-Z] [0-9]) $ /


Si estás haciendo por Canadá recuerda que no todas las letras son válidas

Estas letras no son válidas: D, F, I, O, Q o U, y las letras W y Z no se utilizan como la primera letra. Además, algunas personas usan un espacio opcional después del 3er personaje.

Aquí hay una expresión regular para el código postal canadiense:

new RegExp(/^[abceghjklmnprstvxy][0-9][abceghjklmnprstvwxyz]/s?[0-9][abceghjklmnprstvwxyz][0-9]$/i)

Lo último lo hace insensible a mayúsculas y minúsculas.



Una forma de verificar el código postal válido de Canadá es-

function isValidCAPostal(pcVal) { return ^[A-Za-z][0-9][A-Za-z]/s{0,1}[0-9][A-Za-z][0-9]$/.test(pcVal); }

Espero que esto ayude a alguien.


Javascript Regex Literal :

Códigos postales de EE. UU .: /(^/d{5}$)|(^/d{5}-/d{4}$)/

var isValidZip = /(^/d{5}$)|(^/d{5}-/d{4}$)/.test("90210");

Algunos países usan códigos postales , lo que fracasaría en este patrón.


function isValidUSZip(sZip) { return /^/d{5}(-/d{4})?$/.test(sZip); }