gpt4 book ai didi

javascript - 匹配正则表达式中单个字符的第 n 次出现

转载 作者:行者123 更新时间:2023-11-28 14:49:31 25 4
gpt4 key购买 nike

我很难找到任何真正符合我需要的正则表达式,尽管这个请求在我开始时看起来很容易。希望在这里得到帮助。

我们代码中的一个早期错误是以 YYYY-MM-DD HH:mm:ss:SSS 格式发送日期。 。这不是有效的 ISO,因为毫秒以冒号而不是句点开头。

我想要一个快速的正则表达式与 JS .replace() 结合使用来匹配第三个冒号 :并将其替换为句点 .正如我所说,这听起来非常基本 - 但我没有发现任何有效的方法,并且在我的案例中,针对类似问题的建议修复也没有其他地方有效。

感谢任何帮助。

最佳答案

您可以使用 /^((?:[^:]*:){2}[^:]*):(.*)$/; (?:[^:]*:){2} 匹配第二个冒号和 ^((?:[^:]*:){2}[^:]* ) 匹配从字符串开头到第三个冒号的字符串; (.*)$ 匹配第三个冒号之后的所有内容;捕获第三个冒号之前和之后的内容,使用反向引用重新格式化字符串:

console.log("YYYY-MM-DD HH:mm:ss:SSS".replace(/^((?:[^:]*:){2}[^:]*):(.*)$/, "$1.$2"))

或者针对此特定情况使用更简单的方法,将最后一个冒号替换为 :

console.log("YYYY-MM-DD HH:mm:ss:SSS".replace(/:(?=[^:]*$)/, "."))

关于javascript - 匹配正则表达式中单个字符的第 n 次出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45069509/

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