Esta crónica fue probado por especialistas así se asegura la exactitud de nuestra esta división.
Solución:
Consulte la respuesta a esta pregunta sobre la validación de direcciones con expresiones regulares: coincidencia de dirección de calle de expresión regular
El problema es que las direcciones de las calles varían tanto en el formato que es difícil codificarlas. Si está tratando de validar direcciones, encontrar si una no es válida en función de su formato es muy difícil de hacer. Esto devolvería la siguiente dirección (253 N. Cherry St.), cualquier cosa con el mismo formato:
d1,5sw.s(bw*bs)1,2w*.
Esto permite 1-5 dígitos para el número de casa, un espacio, un carácter seguido de un punto (para N. o S.), 1-2 palabras para el nombre de la calle, terminado con una abreviatura (como st. o rd.) .
Debido a que regex se usa para ver si las cosas cumplen con un estándar o protocolo (que usted define), probablemente no desee permitir las direcciones proporcionadas anteriormente, especialmente la primera con el guión, ya que no son muy estándar. puede modificar mi código anterior para permitirlos si lo desea; puede agregar
(-?)
para permitir un guión pero no requerirlo.
Además, http://rubular.com/ es una forma rápida e interactiva de aprender expresiones regulares. Pruébelo con las direcciones anteriores.
En caso de que no tenga un formato fijo para la dirección como se mencionó anteriormente, usaría la expresión regular solo para eliminar los símbolos que no se usan en la dirección (como símbolos especializados – &(%#$^). El resultado sería ser:
[A-Za-z0-9'.-s,]
Solo para agregar a la respuesta de Serzas (ya que no tengo suficientes representantes para comentar). los alfabetos y los números se pueden reemplazar efectivamente por w para las palabras. Además, el apóstrofo, la coma, el punto y el guión no necesitan necesariamente una barra invertida. Mi requerimiento también involucró barras diagonales delanteras y traseras, así que / y finalmente espacios en blanco con s. La expresión regular de trabajo para mí, como tal, fue:
pattern: "[w',-\/.s]"
Acuérdate de que tienes la capacidad de parafrasear si te fue de ayuda.