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

182
Vistas
¿Cómo convertir un patrón de expresión regular PCRE con restablecimiento de coincidencia para ECMAScript?

Supongamos que tengo el siguiente patrón:

 | | | | | | | | | | | | | | | | | |

Estoy interesado en una expresión regex que pueda coincidir con cualquier cosa entre la segunda y la tercera | caracteres, como se muestra a continuación.

ingrese la descripción de la imagen aquí

Puedo hacer esto usando el siguiente patrón ^\|\s+\|\K\s+(?=\|) ( demostración de regex aquí ) con el sabor PCRE .

Sin embargo, mi requisito es encontrar un patrón compatible con el tipo ECMAScript . El uso del restablecimiento de coincidencia (es decir, \K ) no funciona en este caso. ¿Tiene alguna idea sobre cómo obtener algo similar que funcione en ECMAScript ?

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

0

Como se indica en los comentarios, esto puede ser mucho más fácil de resolver dividiendo la cadena en | .

 // The string with 'a', 'b', and 'c' added for clarity. const string = "| | a | | | |\n| | b | | | |\n| | c | | | |"; // Print the string. console.log(string); // Split and print the regions between the 2nd and 3rd `|`. string.split('\n').forEach(line => { console.log(line.split('|', 3)[2]) });

about 4 years ago · Juan Pablo Isaza Denunciar

0

Si bien dividir es más fácil, todavía quería ver si podía hacerlo con expresiones regulares. Puede usar la búsqueda anticipada para hacer coincidir el patrón desde el principio de la línea y, dentro de la búsqueda anticipada, capturar el contenido de lo que está buscando en un grupo de captura.

Ejemplo: https://regex101.com/r/v0GnAN/1

(?=^\|[^|]*\|([^|]*?)\|)

Este es un grupo de anticipación que está buscando cualquier cosa entre dos | caracteres, luego haciendo coincidir lo mismo pero dentro de un grupo de captura. Esto es ligeramente diferente del enfoque \K en el que sus resultados ahora están en el grupo 1 en lugar del grupo 0.

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