J'ai un champ de texte qui doit rester que du texte ou décimal. Voici le code que j'utilise actuellement pour tout remplacer sauf les chiffres et un point décimal. La question est, je ne peux pas trouver une regex qui identifiera tout le reste
document.getElementById(target).value = newVal.replace(/\D[^\.]/g, "");
Le\D fonctionne bien, mais j’ai essayé (?!.), (?!\.), [^.], [^\.]
et ainsi de suite ...
Avez-vous des suggestions pour une expression régulière qui s'identifie positivement avec n'importe quoi sauf un nombre ou une décimale?
Merci pour l'aide
Utilisez ceci:
document.getElementById(target).value = newVal.replace(/[^0-9.]/g, "");
Supprimer uniquement la partie décimale peut être effectué comme suit:
number.replace(/(\.\d+)+/,'');
Cela convertirait 13.6667px en 13px (en laissant les unités inchangées).
Essaye ça:
document.getElementById(target).value = newVal.replace(/^\d+(\.\d{0,2})?$/, "");
Consultez le lien Demo Expression régulière
utilisez le reg exp ci-dessous
[a-z] + [^ 0-9\s.] + |. (?!\d)