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

111
Views
Patrón de reemplazo de RegEx de JavasScript en una cadena que parece una matriz

Tengo una matriz en formato de cadena. Con Javascript, cómo reemplazar [ , ] , <Tag: y > en la menor cantidad de código posible:

 let s = "[<Tag: cats>, <Tag: dogs>, <Tag: parakeets>]"

El resultado final debería verse así:

 "cats, dogs, parakeets"

Esto parece funcionar, pero es bastante... no genial.

 s.replace(/^\[/, '').replace(/\]$/, '').replaceAll('<Tag: ', '').replaceAll('>', '')

¿Hay una manera inteligente de hacer esto con RegEx?

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Hacer coincidir <Tag: y luego capturar caracteres que no sean > parece que haría lo que desea:

 const s = "[<Tag: cats>, <Tag: dogs>, <Tag: parakeets>]"; const result = s.replace(/<Tag: ([^>]+)>/g, '$1').replace(/[[\]]/g, ''); console.log(result);

Otro enfoque, hacer coincidir en lugar de reemplazar:

 const s = "[<Tag: cats>, <Tag: dogs>, <Tag: parakeets>]"; const result = [...s.matchAll(/<Tag: ([^>]+)>/g)] .map(match => match[1]) .join(', '); console.log(result);

about 4 years ago · Juan Pablo Isaza Report

0

Sugeriría hacer coincidir todas las subcadenas y unirlas:

 const result = [...s.matchAll(/<Tag:\s*(\w+)>/g)] .map( ([, m]) => m ) .join(', '); // result: "cats, dogs, parakeets"
about 4 years ago · Juan Pablo Isaza Report

0

Cuando se admite un cuantificador infinito en un lookbehind, puede hacer coincidir todos los valores entre <Tag: y > y asegurarse de que todas las coincidencias estén entre corchetes.

Vea las coincidencias de expresiones regulares en esta demostración de expresiones regulares .

 let s = "[<Tag: cats>, <Tag: dogs>, <Tag: parakeets>]" const regex = /(?<=\[[^\][]*<Tag: )\w+(?=>[^\][]*\])/g; console.log(s.match(regex).join(", "));

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!