javascript - Expresión regular para reemplazar todo excepto números y un punto decimal
Tengo un campo de texto que debe permanecer solo como texto o decimal. Aquí está el código que estoy usando actualmente para reemplazar todo excepto números y un punto decimal. El problema es que no puedo encontrar una expresión regular que identifique todo lo demás
document.getElementById(target).value = newVal.replace(/\D[^\.]/g, "");
El \D funciona bien, pero he probado (?!.), (?!\.), [^.], [^\.] y así sucesivamente...
¿Alguna sugerencia para una expresión regular que se identifique positivamente con cualquier cosa excepto un número o un decimal?
Gracias por la ayuda
Respuesta #1
Usa esto:
document.getElementById(target).value = newVal.replace(/[^0-9.]/g, '');
Respuesta #2
Eliminar solo la parte decimal se puede hacer de la siguiente manera:
number.replace(/(\.\d+)+/,'');
Esto convertiría 13.6667px en 13px (dejando las unidades px intactas).
