gpt4 book ai didi

javascript - 使用正则表达式查找并替换字符串中的每个第二个反引号

转载 作者:搜寻专家 更新时间:2023-11-01 05:03:10 25 4
gpt4 key购买 nike

我正在尝试编写一个脚本,将每个 SECOND 反引号替换为反引号和分号。请参阅下面的预期行为:

"`Here is my string`" 

需要成为:

"`Here is my string`;"

我在堆栈上找到了一些有用的答案,例如 this one , this onethis one但是当我在 this solution 上尝试更换时它选择所有出现的事件,而不是每隔两次出现的事件。在 this solution 上它选择第一次出现而不是第二次出现。

截至目前,我已经尝试...

str.replace(/\`.*?\`*/g, '`;')

……还有……

str.replace('\w*\`\b/gm, '`;')

两者都让我很接近,但我似乎无法独自获得每一个 SECOND 反引号。

最佳答案

如果你想每秒钟替换一次反引号,你可以使用一个捕获组和一个 negated character class

在替换中你可以使用 $1;`

(`[^`]*)`

解释

  • ( 捕获组
    • `[^`]* 匹配反引号,使用取反字符类匹配 0+ 次除反引号以外的任何字符
  • )` 关闭第 1 组并匹配反引号

Regex demo

const regex = /(`[^`]*)`/g;
const str = `\`Here is my string\` this is another test \`Here is my string\``;
const result = str.replace(regex, `$1\`;`);
console.log(result);

关于javascript - 使用正则表达式查找并替换字符串中的每个第二个反引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57444177/

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