我有一些匹配小数点后一定位数的代码。目前,我有以下内容:
var input = getValueFromUser();
var count = getCount();
var x = Number(input.toString().match(/^\d+(?:\.\d{0,1})?/));
alert(x);
Run Code Online (Sandbox Code Playgroud)
此方法始终获取小数点后的第一个数字。但是,我想用中的值替换正则表达式中的1 count。我怎么做?我尝试了以下方法:
var pattern = '/^\d+(?:\.\d{0,' + count + '})?/';
var x = Number(input.toString().match(pattern));
Run Code Online (Sandbox Code Playgroud)
但是,现在,我总是得到0的x。
Regexp如果要使用动态构建的模式,则必须使用object:
var re = new RegExp('^\\d+(?:\\.\\d{0,' + count + '})?');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1520 次 |
| 最近记录: |