Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

98
Visualizações
Reemplace una cadena con valores de matriz en javascript

Estoy tratando de reemplazar los valores de cadena con valores de matriz en javascript uniendo los valores de cadena con valores de matriz. por ejemplo:

mi cadena es

 var str = 'a*b-ab'; var arrayElement = [['a', 'class 1'], ['b', 'class 12'],['ab', 'class 15'],['ac', 'class 2']]

Ahora, string(str) tiene a, b, ab y array tiene a, b, ab, ac. necesitamos unir valores de cadena como a, b y ab y obtener su descripción de la matriz. y mi salida tiene que ser

 class 1 * class 12 - class 15

¿Hay alguna manera de hacerlo en javascript? por favor ayuda.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Primero puede convertir su elemento de arrayElement en un mapa para que pueda encontrar fácilmente los valores de clase de sus cadenas a, b, ab, etc. Luego puede usar .replace() con la expresión regular \w+ para hacer coincidir elementos de palabras (es decir: los no operadores) en su cadena. Luego puede usar una función como el segundo argumento de .replace() para tomar las letras coincidentes y usar el Mapa que creamos para tomar su clase asociada:

 const str = 'a*b-ab'; const arrayElement = [['a', 'class 1'], ['b', 'class 12'],['ab', 'class 15'],['ac', 'class 2']]; const lookup = new Map(arrayElement); const res = str.replace(/\w+/g, m => ` ${lookup.get(m)} `).trim(); console.log(res);

Si necesita una mejor compatibilidad con el navegador, esto se puede reescribir en ES5 así, que es compatible con muchos navegadores, incluido IE11:

 var str = 'a*b-ab'; var arrayElement = [['a', 'class 1'], ['b', 'class 12'],['ab', 'class 15'],['ac', 'class 2']]; var lookup = arrayElement.reduce(function(acc, arr) { acc[arr[0]] = arr[1]; return acc; }, {}); var res = str.replace(/\w+/g, function(m) { return " " + lookup[m] + " "; }).trim(); console.log(res);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda