JavaScript 正则表达式 - 使用尾随零和字符串格式化十进制

标签 javascript regex

我有不同格式的价格,需要显示如下:

1.09-----> 1.09
1.00----> 1
1.00 lb --->1lb
1.09 lb---->1.09lb

我需要帮助构建 JavaScript 的正则表达式,以便以指定格式显示上述价格。

最佳答案

使用 parseFloatNumber.toString 解析并格式化数字部分。添加特殊情况来处理 LB:

function formatPrice(price) {
    return parseFloat(price) + (price.match(/ .+$/) ? price.match(/ (.+)$/)[1] : "");
}

console.log(formatPrice("1.00"));    // 1
console.log(formatPrice("1.09"));    // 1.09
console.log(formatPrice("1.09000")); // 1.09
console.log(formatPrice("1.00 lb")); // 1lb
console.log(formatPrice("1.09 lb")); // 1.09lb
console.log(formatPrice("1.09 kg")); // 1.09kg

关于JavaScript 正则表达式 - 使用尾随零和字符串格式化十进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25361296/

相关文章:

javascript - 文件直到处理程序的方法才到达

javascript - jQuery 自动完成渲染项目未执行

javascript - 调整正则表达式以删除尾随小数点+零(如果没有分数)

ruby - 正则表达式在电子邮件的原始正文中查找 Base64 (Ruby)

javascript - 正则表达式适用于 PCRE 和 Python,但不适用于 Javascript

javascript - Mongoose/Mongodb 基本 trello 类方案问题在 vue 中呈现

javascript - 如何给所有 p 元素一个类名?

javascript - 连续调用 Javascript 函数

javascript - IPV4 地址的正则表达式给出无效响应

javascript - 如何匹配引号内的搜索词