Ich habe ein Textfeld, das nur Text oder Dezimalzeichen bleiben muss. Hier ist der Code, den ich derzeit verwende, um alles außer Zahlen und einem Dezimalzeichen zu ersetzen. Das Problem ist, ich kann keine Regex finden, die alles andere identifiziert
document.getElementById(target).value = newVal.replace(/\D[^\.]/g, "");
The\D funktioniert gut, aber ich habe (?!.), (?!\.), [^.], [^\.]
und so weiter versucht ...
Irgendwelche Vorschläge für einen regulären Ausdruck, der sich positiv mit etwas außer einer Zahl oder Dezimalzahl identifiziert?
Danke für die Hilfe
Benutze das:
document.getElementById(target).value = newVal.replace(/[^0-9.]/g, "");
Das Entfernen von Dezimalstellen kann wie folgt durchgeführt werden:
number.replace(/(\.\d+)+/,'');
Dies würde 13,6667px in 13px umwandeln (dabei bleiben die Einheiten px unberührt).
Versuche dies:
document.getElementById(target).value = newVal.replace(/^\d+(\.\d{0,2})?$/, "");
Überprüfen Sie den Link Regular Expression Demo
verwenden Sie das unten angegebene Reg Exp
[a-z] + [^ 0-9\s.] + |. (?!\d)