Javascript 正则表达式到数字/十进制和减号
Posted
技术标签:
【中文标题】Javascript 正则表达式到数字/十进制和减号【英文标题】:Javascript Regex to digit/decimal and minus sign 【发布时间】:2014-04-19 22:39:42 【问题描述】:在我的网络表单文本框中,我只想允许小数点后只有 2 位的数值,并且数字前可以有负号(减号)。例如 xxx.xx 或 -xxx.xx 或 xxx 或 -xxx 。我知道下面的代码几乎可以满足我的要求,但是我应该如何只允许数字前的 -(减号) 符号?
onBlur="this.value = this.value.replace(/[^0-9\.]/g, '');"
因此,无论用户类型如何,字母字符和其他符号都应该被删除。
【问题讨论】:
【参考方案1】:this.value.replace(/^(-?).*?(\d+\.\d2).*$/, "$1$2");
【讨论】:
【参考方案2】:在删除其他字符后,删除所有不是第一个字符的减号:
onBlur = "this.value = this.value.replace(/[^0-9\.-]/g, '').replace(/(.)-+/g, '$1');"
【讨论】:
@user3344151:嗯……你能说得更具体点吗?以上是关于Javascript 正则表达式到数字/十进制和减号的主要内容,如果未能解决你的问题,请参考以下文章