我有一个文本字段,只需要保留文本或小数.这是我正在使用的代码,用于替换除数字和小数点之外的所有内容.问题是,我无法弄清楚能够识别其他一切的正则表达式
document.getElementById(target).value = newVal.replace(/\D[^\.]/g, "");
Run Code Online (Sandbox Code Playgroud)
\ D工作正常,但我已经尝试过(?!.), (?!\.), [^.], [^\.]等等......
有关正则表达式的任何建议,除了数字或小数外都能正确识别吗?
谢谢您的帮助
Cha*_*ndu 213
用这个:
document.getElementById(target).value = newVal.replace(/[^0-9.]/g, "");
Run Code Online (Sandbox Code Playgroud)
仅删除小数部分可以按如下方式进行:
number.replace(/(\.\d+)+/,'');
Run Code Online (Sandbox Code Playgroud)
这会将13.6667px转换为13px(保持单位px不变).
试试这个:
document.getElementById(target).value = newVal.replace(/^\d+(\.\d{0,2})?$/, "");