Regex在javascript中全局接受后台空间

Regex在javascript中全局接受后台空间,javascript,regex,reactjs,currency,Javascript,Regex,Reactjs,Currency,我用这个正则表达式来限制货币字段,它非常有效,因为我可以简单地替换。用一个,我可以很容易地定位它的飞行。我唯一的问题是,我似乎无法使用这个正则表达式删除最后剩下的字符,我希望能够做到这一点。有没有办法修改这个正则表达式以允许这样做 ^[+-]?([\b0-9])+[.]?([0-9])+$ 编辑:上面的正则表达式作为字符串通过props在react to输入字段中传递。然后,输入字段在更新其值之前检查此方法 matchRegex = (reg, val) => { const reg

我用这个正则表达式来限制货币字段,它非常有效,因为我可以简单地替换。用一个,我可以很容易地定位它的飞行。我唯一的问题是,我似乎无法使用这个正则表达式删除最后剩下的字符,我希望能够做到这一点。有没有办法修改这个正则表达式以允许这样做

^[+-]?([\b0-9])+[.]?([0-9])+$
编辑:上面的正则表达式作为字符串通过props在react to输入字段中传递。然后,输入字段在更新其值之前检查此方法

  matchRegex = (reg, val) => {
const regex = new RegExp(reg, "gm");
if (regex.test(val)) {
  return true;
}
return false;

})

事实上,我能猜出这一点。由于我正在拦截击键,实际上我不需要担心整个字符串,可以一次只关注一个输入字符,因此以下内容能够满足我的需要:

^([\b^0-9.-])*$

我想你需要展示一下你在用这个regexp做什么如果你想删除最后一个字符,为什么要用regex?为什么不使用类似于
str.slice(0,str.length-1)
的东西呢?我正在尝试截获传入的击键,并允许或不允许它。这就是我使用正则表达式的原因。但是,一旦我退格到最后一个字符,如果需要,我也无法删除它。这就是问题所在。请尝试在击键中使用事件来执行event.preventDefault()handler@CognitiveDesire请澄清和/或提供一个例子。