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

99
Visualizações
Busque uno o más caracteres y reemplácelos en JavaScript

Al usar indexOf() , pude detectar si la entrada contiene "SP-" y reemplazarla.

Sin embargo, necesito buscar más de un conjunto de caracteres: sp- , SP- , eb- , EB- y más...

Tengo lo siguiente para reemplazar sp- y SP- pero no quiero replicar este bloque completo para cada instancia.

 // Check for 'sp-' characters in the order ID. if (order_id.indexOf("SP-") !== -1) { // Remove string from input form.find('input[name="orderid"]').val(order_id.replace("SP-", "")); } // Check for 'SP-' characters in the order ID. if (order_id.indexOf("sp-") !== -1) { // Remove string from input form.find('input[name="orderid"]').val(order_id.replace("sp-", "")); }

Actualización : solo pensé en una solución mejor, busque todos los caracteres anteriores e incluidos - y elimínelos. Por lo tanto, no estamos limitados a una lista específica en caso de que se agreguen nuevos prefijos en una fecha posterior.

sp-1234 , SP-1234 , xx-1234 , etc

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

0

Para reemplazar todas las mayúsculas y minúsculas, ¿puedes probar esto?

 form.find('input[name="orderid"]').val(order_id.replace(/sp-/gi, ''));

o puedes hacer algo como esto

 ['SP-', 'sp-', 'eb-', 'EB-'].forEach((item)=>{ if ( order_id.indexOf(item) !== -1 ) { // Remove string from input form.find('input[name="orderid"]').val(order_id.replace(item, '')); } });

Actualización: solo pensé en una solución mejor, busque todos los caracteres anteriores e incluidos, y elimínelos. Por lo tanto, no estamos limitados a una lista específica en caso de que se agreguen nuevos prefijos en una fecha posterior.

sp-1234, SP-1234, xx-1234, etc.

Tal vez algo como esto debería funcionar

 if(order_id.indexOf('-') !== -1) { var prefix = order_id.substr(0, order_id.indexOf('-')); form.find('input[name="orderid"]').val(order_id.replace(`${prefix}-`, "")); }
about 4 years ago · Juan Pablo Isaza Relatório

0

Simplemente use una expresión regular con un conjunto de insensibilidad a mayúsculas y minúsculas. No hay ninguna razón para verificar que la cadena exista dentro de la cadena porque el método de reemplazo no hace nada si no hay una coincidencia.

 function removePrefix(str) { return str.replace(/(sp|eb)-/i, ''); } ["fo-foooo", "sp-123", "SP-123", "eb-321", "EB-911"].forEach( function (str) { console.log(str, removePrefix(str)); });

Hacer coincidir cualquier cosa que comience con una cadena seguida de un guión

 function removePrefix(str) { return str.replace(/^[^-]+-/i, ''); } ["fo-foooo", "sp-123", "SP-123", "eb-321", "EB-911"].forEach( function (str) { console.log(str, removePrefix(str)); });

about 4 years ago · Juan Pablo Isaza Relatório

0

Prueba algo como esto:

 var vals = ["sp-","ep-"] // Put all the values here vals.forEach(v => { if (order_id.indexOf(v) !== -1) {form.find('input[name="orderid"]').val(order_id.replace(v, ''))}; })
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