Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

78
Views
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 answers
Answer question

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 Report

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 Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!