Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

249
Visualizações
Pregunta sobre dividir una cadena con expresión regular en JS

Estoy aprendiendo algunas expresiones regulares.

Ahora estoy tratando de sacar la calle y el número de la casa de una cadena.

Así que esta es mi cadena "Driesstraat(Ide) 20". Driesstraat es el nombre de la calle. (Ide) es un acrónimo de municipio. 20 es el número de casa.

 let re = /^(\d*[\p{L} \d'\/\\\-\.]+)[,\s]+(\d+)\s*([\p{L} \d\-\/'"\(\)]*)$/iu let match = adresInput.value.match(re) if (match){ match.shift(); console.log(match.join('|')); }

El código anterior funciona cuando no hay (Ide). Obtuve esta cadena de un lector de Eid belga.

gracias de antemano

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Lo primero es lo primero, (...) no coincide con su patrón (\d*[\p{L} \d'\/\\\-\.]+) , por lo que debe agregar (?:\(\p{L}*\))? o (?:\([^()]*\))? justo después de ese patrón para hacer coincidir opcionalmente una parte de una cadena entre paréntesis. (?:\(\p{L}*\))? coincidirá solo con letras entre corchetes y (?:\([^()]*\))? coincidirá con cualquier carácter que no sea ( y ) entre corchetes.

Además, cuando use expresiones regulares con el indicador /u , debe asegurarse de escapar solo lo que debe escaparse dentro de las clases de caracteres. Significa que escapaste varios caracteres dentro [...] . No necesita escapar ( , ) , . e incluso puede evitar escapar - cuando se coloca al final de la clase de personaje. Los caracteres que se deben escapar dentro de las clases de caracteres en el tipo de expresiones regulares de ECMAScript son \ , ] y ^ se debe escapar si está al comienzo de la clase de caracteres. Aunque el - también se puede escapar, es una buena práctica ponerlo al final de la clase de caracteres sin escapar.

Entonces, puedes usar

 /^(\d*[\p{L} \d'/\\.-]+)(?:\([^()]*\))?[,\s]+(\d+)\s*([\p{L} \d/'"()-]*)$/u

Vea la demostración de expresiones regulares .

Tenga en cuenta que ni siquiera tiene que escapar / dentro de las clases de caracteres en el sabor de expresiones regulares de ECMAScript en JavaScript.

Ver una prueba de JavaScript:

 let re = /^(\d*[\p{L} \d'/\\.\-]+)(?:\([^()]*\))?[,\s]+(\d+)\s*([\p{L} \d/'"()-]*)$/u; console.log(re.test("Driesstraat(Ide) 20"));

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda