javascript - 替换 Javascript 中的数字

标签 javascript regex

我有这个字符串:£0,00

例如,我想用 float 3.95 替换它。但我想保留 £ 和 ","

所以结果 -> £3,95

我该怎么做?

--

添加了一些细节:

货币符号是否始终为 £?
货币符号可能在数字之前,有时在数字之后。即 0,00 克朗

分隔符是始终是 , 还是可能是 .甚至是任意字符?
分隔符可能是 .有时。

总是会有两位小数吗?
小数点始终保留 2 位。

可能有多少位整数,是否会有千位分隔符?
它不会超过 100。

最佳答案

function convert (proto, value) {
  return proto.replace (/0(.)00/, function (m, dp) {
    return value.toFixed (2).replace ('.', dp);
  });
}

proto 参数指定格式,它必须有一个由单个 0 数字后跟任意字符和两个 0 数字组成的子字符串,整个子字符串由数值参数替换,小数点替换为proto 中 0 数字之间的字符。

关于javascript - 替换 Javascript 中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6122837/

相关文章:

javascript - 带有 javascript 验证的文本区域

c# - 删除字符串中分隔符之间的文本(使用正则表达式?)

ruby-on-rails - 如何将 Ruby 变量放入正则表达式代码中

javascript - 当从一个页面快速导航到另一个脚本时显示警报,为什么?

java - 正则表达式找到最短匹配?

java - 密码验证不允许在屏幕末尾出现特殊字符

javascript - Ajax 表单提交将查询字符串附加到 url 并重新加载页面

javascript - 为什么 'this' 没有采用正确的范围

javascript - 在 jsontohtml 中使用 if (typeof(obj._source.url) !== 'undefined' ) 表达式

javascript - 在 QuerySelector 中只使用单引号