javascript - 如何在js替换函数中进行数字运算?

标签 javascript regex replace

const detailFontSize = fontSize ? fontSize.replace(/(\d+)/, $1-2) : '';

比如fontSize是“12pt”,我希望修改为“10pt”。如何用$1进行replace函数中的数字运算?

上面的代码不起作用,因为 $1 未定义。如果我添加引号,它将变成“12-2pt”

最佳答案

您可以使用函数作为 .replace() 的第二个参数来操作匹配的值:

const fontSize = '12pt';

const detailFontSize = fontSize ? fontSize.replace(/(\d+)/, m => Number(m) - 2) : '';

console.log(detailFontSize)

关于javascript - 如何在js替换函数中进行数字运算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64869268/

相关文章:

javascript - 进行简单的 Twitter API 调用

javascript - 甜蜜警报不适用于取消按钮

javascript - 如何使用 C# 验证 Microsoft MVP 个人资料链接是否有效?

python - 为什么 python 3 给我 "expected string or buffer"

python - 在 Python 中使用字典替换列表中的字符串

Python pandas 替换函数不适用于转义字符

C 程序将文本文件中的模式 "find"替换为 "replace"作为输入和输出文件应该具有替换模式

javascript - 如何在一页上覆盖 autoscroll=true ?

c# - 货币正则表达式

javascript - 创建一个正则表达式以用相同字符替换字符串的每个匹配字符