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

348
Views
¿Cómo puedo obtener valor de la entrada, reemplazar ciertos caracteres del valor y no obtener un valor indefinido? JavaScript

Estoy tratando de obtener el valor de una entrada, reemplazar ciertos caracteres y almacenar el nuevo valor en una variable. Sin embargo, con mi código actual, obtengo un valor "indefinido" al final de todo.

Este es mi código ahora mismo. Es un poco complicado porque he estado probando diferentes métodos desde anoche sin éxito.

 var diceType = document.getElementById('set'); const newdiceType = (diceType) => { return diceType.toString().replace(/{}a!/g, ""); }; diceType = newdiceType; alert(diceType.value);

Antes de eso, tenía algo como esto:

 var diceType = document.getElementById('set'); var newdiceType = ""; newdiceType = parseFloat(diceType.toString().replace(/{}a!/g, '')); alert(newdiceType.value);

Lo que realmente quiero hacer es lo siguiente en javascript (cualquier ayuda con esto sería muy apreciada):

  1. Obtenga el valor de la entrada.
  2. Reemplace todos los caracteres de ese valor que no sean números, la letra "d" y el signo más "+". por ejemplo, si el valor de entrada es "3d6+2 {a}", o "4d10 {b} !!!" Obtendré 3d6+2 o 4d10.
  3. Almacene el nuevo valor dentro de la variable "newdiceType" Muestre el valor de "newdiceType" en una alerta y no se muestre como "indefinido". Por ejemplo, si los resultados modificados del paso 2 son "3d6+2", la alerta mostrará "3d6+2".
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Algo como esto es lo que necesitas:

 const replaceDiceType = (diceType) => { const rem = diceType.toString().replaceAll(/\{.*?\}|\s|!/g,""); return rem } const handleInputValue = () => { const diceTypeInput = document.getElementById('set').value; const newDiceType = replaceDiceType(diceTypeInput); alert(newDiceType); }
 <input type="text" id="set" placeholder="Input here"/> <button type="button" onClick="handleInputValue()">Enter Value</button>

  • Primero, para obtener el valor de una entrada llamándola mediante un selector, debe usar su propiedad .value Lea aquí .

  • Luego, la expresión regular que estoy usando buscará en toda la cadena los casos en los que { } ! existe y que también hay algo dentro de los paréntesis..

  • Por último he añadido un botón para que no se ejecute al inicio, y podrías usar un onChange de la entrada para mostrar los cambios cada vez que se detecte un cambio en la entrada Leer aquí .

about 4 years ago · Juan Pablo Isaza Report

0

probar esto :

 function replaceDiceType(diceType) { return diceType.replace(/[^a-zA-Z0-9+]/g, ""); } var diceType = document.getElementById('set').value; alert(replaceDiceType(diceType));
  • ^ niega lo que sigue
  • a-zA-Z coincide con letras mayúsculas y minúsculas
  • \d coincide con dígitos
  • \+ coincidencias +
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!