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

222
Vistas
Cómo quitar y convertir esto usando expresiones regulares

Estoy trabajando para permitir que los usuarios hagan menciones y se guardan en la base de datos de esta manera @[Abdullah](61dfaceadef99a95503119a8) a veces puede estar en una oración o párrafo.

¿Cómo puedo hacer para que si una oración o párrafo contiene una mención se convierta?

De: hey @[Abdullah](61dfaceadef99a95503119a8) check this out and @[James](61dfaceadef99a95514562) welcome to the group!

Para: hey Abdullah check this out and James welcome to the group!

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

0

Independientemente del idioma/plataforma, su patrón RE tendrá tres partes:

  • marque el inicio de la cadena como un grupo de captura: @[
  • coincide con el medio de la cadena: Abdullah
  • marque el resto de la cadena como un grupo de captura: ](61dfaceadef99a95503119a8)

Suponiendo que solo está buscando el patrón de expresiones regulares en ECMAScript, necesitará algo como:

(\@\[).*(\]\([a-f0-9]+\))

Ejecute eso a través de match() o matchAll() para identificar coincidencias, o use replace() en las coincidencias. javascript.info tiene un ejemplo que usa grupos de captura , que se parece lo suficiente a su escenario.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Finalmente tuve tiempo de hacerlo y obtuve una respuesta también gracias a la respuesta de @Denton Thomas, pude entender qué hacer.

 let str = "hey @[Abdullah](61dfaceadef99a95503119a8) check this out and @[James](61dfaceadef99a95514562) welcome to the group!"; let regexp = /((.)\[([^[]*)]\(([^(^)]*)\))/gi var result = str.replace(regexp, function(data){ console.log("data:", data) let name = data.match(/([^[]+(?=]))/g) console.log("name:", name) return name[0] }); console.log("message:", result );
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