常用的正则表达式匹配

1.给数字加千分位逗号

'123456789.99888'.replace(/(?=(?!\b)(?<!\.\d+)(\d{3})+(\.\d+)?$)/g, ',')

2.保留固定的整数位和小数位

/**

*

* @param {z: 保留整数位数 y: 保留小数位数} param0

*/

function keepLen(num, {z, x} = {}) {

let regStr = `^${ z ? `(\\d{1,${z}})\\d*` : '(\\d+)' }${ x ? `((\\.\\d{1,${x}})\\d*)?` : '(\\.\\d+)?' }$`

let reg$ = '$1'

x && (reg$ += '$3')

let reg = new RegExp(regStr)

return num.toString().replace(reg, reg$)

}

console.log(keepLen(1234.556677, {z: 2, x: 3}))  // 12.556

console.log(keepLen(1234.556677, {x: 3}))  // 1234.556

console.log(keepLen(1234.556677, {z: 2})) // 12

console.log(keepLen(1234.556677))  // 1234

3.正则表达式给字符串去重

'abcacab'.replace(/(\w)(?=\w*\1)/g, '')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值