gpt4 book ai didi

javascript - 向后查找替换所有出现的情况

转载 作者:行者123 更新时间:2023-12-03 10:14:34 26 4
gpt4 key购买 nike

我想用 0.digit 替换所有出现的 .digit。

我是正则表达式的新手,但据我所知,我可以使用后视来做到这一点。但是JS不支持,我想知道是否有人知道解决方案。为了显示问题,我编写了以下代码。

str = "0.11blabla.22bla0.33bla.33"
allow = "\\.\\d*"
str.match(new RegExp(allow,"g"))
[".11", ".22", ".33", ".33"]
deny = "0\\.\\d*"
str.match(new RegExp(deny,"g"))
["0.11", "0.33"]
diffreg= new RegExp("(?!"+deny+")"+allow,"g") // translates to: /(?!0\.\d*)\.\d*/g
str.match(diffreg)
[".11", ".22", ".33", ".33"]

显然allow匹配所有十进制值,而deny匹配所有前面带0的值。结果当然应该是两者之间的设置差:[“.33”,“.33”]。

最佳答案

使用 group match .

> str.replace(/([^0])(\.\d)/g, "$10$2");
"0.11blabla0.22bla0.33bla0.33"

关于javascript - 向后查找替换所有出现的情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29947734/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com