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

222
Views
Javascript/Jquery: reemplazar patrón de cadena con enlace

Tengo una tabla en una página, donde hay entradas de texto, y tengo uno o más "hashtags", que quiero identificar a través de JavaScript/JQuery y reemplazarlos con un enlace.

Actualmente estoy usando el siguiente selector de expresiones regulares para hashtags: /#([a-zA-Z0-9]+)/g

He estado experimentando con los métodos replaceWith y replace de JQuery, pero aún no pude lograr el resultado deseado.

Entradas de ejemplo en la página:

 <td class="entry">Had meeting with client #Project1</td>

Esta es mi salida deseada (después de manipular a través de JavaScript/JQuery):

 `<td class="entry">Had meeting with client <a href="search.php?`query=#Project1">#Project1</a></td>

¿Alguien ayuda con una función/para esto? Como mi código no está cerca de funcionar, elijo no publicar el código.

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

0

Puedes hacer algo como esto usando JavaScript:

 const entries = document.querySelectorAll(".entry"); entries.forEach((entry) => { entry.innerText.match(/#([a-zA-Z0-9]+)/g).forEach((hash) => { entry.innerHTML = entry.innerHTML.replace( hash, `<a href="search.php?query=${hash}">${hash}</a>` ); }); });
 <p class="entry">Had meeting with client #Project1</p> <p class="entry">Had meeting with client #Project2 & #Project3</p>

about 4 years ago · Juan Pablo Isaza Report

0

¿Quizás esta solución ayude?

 document.querySelectorAll("table td.entry").forEach((el) => { el.innerHTML = el.innerHTML.replace(/#([a-zA-Z0-9]+)/g, '<a href="search.php?`query=#$1">#$1</a>') })
 <table> <tbody> <td class="entry">Had meeting with client #Project1</td> <td class="entry">Had meeting with client #Project2</td> <td class="entry">Had meeting with client #Project3</td> <td class="entry">Had meeting with client #Project4</td> <td class="entry">Had meeting with client #Project5</td> </tbody> </table>

about 4 years ago · Juan Pablo Isaza Report

0

intentalo:

 const str= '<td class="entry">Had meeting with client #Project1</td>'; const match = str.match(/#([a-zA-Z0-9]+)/g); var result = str.replace(match[0],`<a href="search.php?query=${match[0]}">${match[0]}</a>`);
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!