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

83
Vistas
Eliminando un elemento específico de la cadena pero solo en línea que contiene otro elemento específico JS

No estoy seguro si formulé la pregunta correctamente, así que aquí hay un ejemplo

 let string = "Test text ab/c test Test t/est ### Test/ Test t/test Test test"

Estoy buscando eliminar / de la única línea que contiene ### para que termine así:

 Test text ab/c test Test t/est ### Test Test t/test Test test

Supongo que puedo usar

 mystring.replace(/\/g, '')

Pero, ¿cómo especifico que debe eliminar \ solo en la línea con ###

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

0

Puede dividir en líneas nuevas y luego unirlas nuevamente.

 let string = `Test text ab/c test Test t/est ### Test/ Test t/test Test test Test// ### test / ` const parts = string.split("\n") .map(s => s.includes("###") ? s.replace(/\//g, '') : s) .join("\n"); console.log(parts);

about 4 years ago · Juan Pablo Isaza Denunciar

0

Puedes usar

 string.replace(/(?<=###.*)\/|\/(?=.*###)/g, '')

La expresión regular (?<=###.*)\/|\/(?=.*###) coincide con un carácter / que está precedido por ### y cualquier cero o más caracteres sin salto de línea, o seguido de cero o más caracteres que no sean de salto de línea y luego ### .

Vea esta demostración de JavaScript:

 let string = "Test text ab/c test\nTest t/est\n### /T/e/s/t/\nTest t/test\nTest test" console.log(string.replace(/(?<=###.*)\/|\/(?=.*###)/g, ''))

Otra solución: divida la agitación en líneas, luego map la matriz resultante y elimine todos los / caracteres en los elementos que includes la subcadena ### , y luego vuelva a unir la cadena:

 let string = "Test text ab/c test\nTest t/est\n### /T/e/s/t/\nTest t/test\nTest test" console.log( string.split("\n").map(line => line.indexOf('###') > -1 ? line.replace(/\//g, '') : line).join("\n") )

about 4 years ago · Juan Pablo Isaza Denunciar

0

.replace() el segmento completo y luego devuelve todo menos \/ (el \ tiene el prefijo / para escapar de él.

 const str = ` Test text ab/c test Test t/est ### Test/ Test t/test Test test`; const rgx = /(###.+)\//gm; const sub = `$1`; console.log(str.replace(rgx, sub));

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