这段千分位正则,碰到两位单位,会出现bug请问

这段千分位正则,碰到两位单位,会出现bug请问100就加了千分位
这段千分位正则,碰到两位单位,会出现bug请问想要1000加千分位
这段千分位正则,碰到两位单位,会出现bug请问我用¥就正常

 <a-input-number :formatter="value => `${record.options.currency === '美元' ? '$':record.options.currency === '人民币' ? '¥':'NT'}${value}`.replace(/\B(?=(\d{3})+(?!\d))/g, ',')""

/>


回答:

匹配一个数字:(\d)
它后面有1组或多组连续的三个数字,且这n组之后跟着的不是数字:(?=(\d{3})+(?!\d))

且这个数字并不在小数点后:(?<!.\d+)

'NT100.000000000'.replace(/(?<!\.\d+)(\d)(?=(\d{3})+(?!\d))/g,'$1,')


回答:

看代码单位是根据其他参数自己设定的,${value}才是需要处理的数字部分吧,只对数字部分进行正则逗号处理,而不是对整体的进行处理,最简单,改动也少。
符号部分不变,替换只处理数字部分。
对整体怎么处理,已经有小伙伴回答了,这边就不赘述了。

`${record.options.currency === '美元' ? '$':record.options.currency === '人民币' ? '¥':'NT'}${value.replace(/\B(?=(\d{3})+(?!\d))/g, ',')}`

以上是 这段千分位正则,碰到两位单位,会出现bug请问 的全部内容, 来源链接: utcz.com/p/936817.html

回到顶部