Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

214
Vistas
Cómo reemplazar mi expresión regular actual sin usar una mirada negativa hacia atrás

Tengo la siguiente expresión regular que coincide con todas las comillas dobles además de las que se escapan:

es decir: ingrese la descripción de la imagen aquí

La expresión regular es la siguiente:

 ((?<![\\])")

¿Cómo podría modificar esto para que ya no use el lookbehind negativo ya que no es compatible con algunos navegadores?

¡Cualquier ayuda es muy apreciada, gracias!

No pude hacer que nada funcionara actualmente

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

puedes emparejar

 /\\"|(")/

y conservar solo las coincidencias capturadas. Siendo tan simple, debería funcionar con la mayoría de los motores de expresiones regulares.

Manifestación

Esto coincide con lo que no quiere ( \\" ) --que se descarte--y captura lo que sí quiere (") --que se conserve.

Un experto en expresiones regulares se ha referido a esta técnica como El mejor truco de expresiones regulares de todos los tiempos . Para llegar al remate en el enlace, busque "(¡por fin!)".

about 4 years ago · Juan Pablo Isaza Denunciar

0

Ninguno de estos puede ser una solución completamente satisfactoria.

Esta expresión regular no solo coincidirá con "sin escape " , se requiere una lógica adicional para verificar si el primer carácter de los grupos capturados es " y ajustar la posición de coincidencia".

(?:^|[^\\])(")

versión 1

Esta puede ser una mejor opción, pero depende de la búsqueda anticipada positiva, que puede tener el mismo problema que la búsqueda retrospectiva negativa.

Versión 1a (nuevamente requiere lógica adicional) (?:^|\b)(?=[^\\])(")

Versión 2a (depende de la anticipación positiva)

(?:^|\b|\\\\)(?=[^\\])(")

versión 2

Suponiendo que también necesita manejar barras inclinadas escapadas seguidas de comillas escapadas (no en la pregunta, pero está bien):

Versión 1a (requiere la lógica adicional):
(?:^|[^\\]|\\\\)(")

about 4 years ago · Juan Pablo Isaza Denunciar

0

Sobre la base de esta respuesta , me gustaría agregar que es posible que también desee ignorar las barras invertidas escapadas y hacer coincidir la cita de cierre en esta cadena:

"ab\\"

En ese caso, /\\[\\"]|(")/g es lo que buscas.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda